centos

Python数据库连接在CentOS如何配置

小樊
47
2025-10-05 06:04:20
栏目: 编程语言

在CentOS上配置Python数据库连接,通常涉及以下几个步骤:

  1. 安装数据库: 首先,你需要在CentOS上安装所需的数据库。例如,如果你要使用MySQL,可以使用以下命令安装:

    sudo yum install mysql-server
    

    安装完成后,启动MySQL服务并设置开机自启:

    sudo systemctl start mysqld
    sudo systemctl enable mysqld
    

    为了安全起见,运行以下命令来设置MySQL的root密码并移除匿名用户:

    sudo mysql_secure_installation
    
  2. 安装Python数据库驱动: 根据你使用的数据库类型,你需要安装相应的Python库。例如,对于MySQL,你可以使用mysql-connector-pythonPyMySQL

    pip install mysql-connector-python
    

    或者

    pip install PyMySQL
    
  3. 编写Python代码连接数据库: 使用Python编写代码来连接数据库。以下是一个使用mysql-connector-python连接MySQL数据库的示例:

    import mysql.connector
    
    # 连接数据库
    mydb = mysql.connector.connect(
      host="localhost",
      user="yourusername",
      password="yourpassword",
      database="yourdatabase"
    )
    
    # 创建游标对象
    mycursor = mydb.cursor()
    
    # 执行SQL查询
    mycursor.execute("SELECT * FROM yourtable")
    
    # 获取查询结果
    myresult = mycursor.fetchall()
    
    for x in myresult:
      print(x)
    

    如果你使用的是PyMySQL,代码会略有不同:

    import pymysql
    
    # 连接数据库
    connection = pymysql.connect(
      host='localhost',
      user='yourusername',
      password='yourpassword',
      db='yourdatabase'
    )
    
    # 创建游标对象
    try:
        with connection.cursor() as cursor:
            # 执行SQL查询
            sql = "SELECT * FROM `yourtable`"
            cursor.execute(sql)
            # 获取查询结果
            result = cursor.fetchall()
            for row in result:
                print(row)
    finally:
        connection.close()
    
  4. 配置防火墙(如果需要): 如果你的数据库服务器和Python应用程序不在同一台机器上,你可能需要配置CentOS的防火墙以允许数据库端口(例如MySQL的默认端口3306)的流量。

    sudo firewall-cmd --permanent --zone=public --add-port=3306/tcp
    sudo firewall-cmd --reload
    
  5. 测试连接: 运行你的Python脚本以确保它可以成功连接到数据库并执行查询。

请根据你的具体需求和环境调整上述步骤。如果你遇到任何问题,请检查数据库服务是否正在运行,防火墙设置是否正确,以及数据库连接参数(如主机名、用户名、密码和数据库名)是否准确无误。

0
看了该问题的人还看了