centos

如何配置centos lnmp的数据库连接

小樊
47
2025-08-04 17:22:11
栏目: 智能运维

在CentOS上配置LNMP(Linux, Nginx, MySQL/MariaDB, PHP)环境中的数据库连接,通常涉及以下几个步骤:

  1. 安装数据库服务器

    • 对于MySQL,可以使用yum install mysql-server命令安装。
    • 对于MariaDB,可以使用yum install mariadb-server mariadb命令安装。
  2. 启动并启用数据库服务

    systemctl start mysqld  # 对于MySQL
    systemctl enable mysqld  # 对于MySQL
    
    systemctl start mariadb  # 对于MariaDB
    systemctl enable mariadb  # 对于MariaDB
    
  3. 安全配置数据库

    • 运行mysql_secure_installation命令来设置root密码,禁止远程root登录,删除匿名用户等。
  4. 创建数据库和用户

    • 使用mysql命令行工具或者phpMyAdmin来创建数据库和用户,并授予相应的权限。
    CREATE DATABASE your_database_name;
    CREATE USER 'your_username'@'localhost' IDENTIFIED BY 'your_password';
    GRANT ALL PRIVILEGES ON your_database_name.* TO 'your_username'@'localhost';
    FLUSH PRIVILEGES;
    
  5. 配置PHP连接数据库

    • 编辑PHP配置文件(通常是/etc/php.ini或者通过php-fpm的池配置文件),确保PDO和相应的数据库扩展(如pdo_mysqlpdo_mariadb)已启用。
    • 在PHP脚本中使用PDO或mysqli扩展来连接数据库。
    <?php
    $servername = "localhost";
    $username = "your_username";
    $password = "your_password";
    $dbname = "your_database_name";
    
    try {
        $conn = new PDO("mysql:host=$servername;dbname=$dbname", $username, $password);
        // 设置PDO错误模式为异常
        $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
        echo "Connected successfully";
    } catch(PDOException $e) {
        echo "Connection failed: " . $e->getMessage();
    }
    ?>
    
  6. 配置Nginx

    • 编辑Nginx的站点配置文件(通常位于/etc/nginx/conf.d//etc/nginx/sites-available/),设置正确的root目录和location块。
    server {
        listen 80;
        server_name your_domain.com www.your_domain.com;
    
        root /path/to/your/webroot;
        index index.php index.html index.htm;
    
        location / {
            try_files $uri $uri/ =404;
        }
    
        location ~ \.php$ {
            include snippets/fastcgi-php.conf;
            fastcgi_pass unix:/var/run/php-fpm/php-fpm.sock; # 或者使用127.0.0.1:9000
        }
    
        location ~ /\.ht {
            deny all;
        }
    }
    
  7. 重启服务

    • 重启Nginx和PHP-FPM服务以应用更改。
    systemctl restart nginx
    systemctl restart php-fpm  # 如果使用的是PHP-FPM
    

确保按照实际情况替换上述命令中的your_database_nameyour_usernameyour_passwordyour_domain.com等占位符。完成这些步骤后,你的CentOS LNMP环境应该已经配置好了数据库连接。

0
看了该问题的人还看了