CentOS PHP MySQL 配置指南
安装 MySQL

1 安装 MySQL 服务器
在 CentOS 系统中,我们可以使用 yum 命令来安装 MySQL 服务器,以下是一个示例命令:
sudo yum install mysql-community-server
2 启动和停止 MySQL 服务
安装完成后,可以使用以下命令启动和停止 MySQL 服务:
启动 MySQL 服务:
sudo systemctl start mysqld
停止 MySQL 服务:
sudo systemctl stop mysqld
3 设置 MySQL 服务开机自启
为了让 MySQL 服务在系统启动时自动运行,可以使用以下命令:
sudo systemctl enable mysqld
安装 PHP
1 安装 PHP
使用 yum 命令安装 PHP:
sudo yum install php php-mysql
2 安装 PHP 扩展
为了使 PHP 能够与 MySQL 通信,我们需要安装 php-mysql 扩展,这个扩展通常在安装 PHP 时已经默认安装,如果没有,可以使用以下命令安装:

sudo yum install php-mysql
配置 MySQL
1 设置 root 用户密码
在第一次启动 MySQL 服务时,系统会提示设置 root 用户的密码,如果没有设置,可以使用以下命令设置:
sudo mysql_secure_installation
根据提示设置 root 用户的密码、确认密码、移除匿名用户、禁止 root 远程登录以及删除测试数据库。
2 创建数据库和用户
登录 MySQL,创建一个新的数据库和用户:
sudo mysql
CREATE DATABASE mydatabase; CREATE USER 'newuser'@'localhost' IDENTIFIED BY 'newpassword'; GRANT ALL PRIVILEGES ON mydatabase.* TO 'newuser'@'localhost'; FLUSH PRIVILEGES; EXIT;
配置 PHP 与 MySQL 的连接
1 编辑 PHP 配置文件
编辑 PHP 的配置文件 php.ini,通常位于 /etc/php.ini 或 /usr/local/etc/php.ini,找到以下配置项并修改:
; mysql.default_host = "localhost" ; mysql.default_user = "root" ; mysql.default_password = "" ; mysql.default_database = "test"
将上述配置项修改为:
mysql.default_host = "localhost" mysql.default_user = "newuser" mysql.default_password = "newpassword" mysql.default_database = "mydatabase"
2 保存并退出配置文件
保存并退出 php.ini 文件。
测试 PHP 与 MySQL 的连接

1 创建一个 PHP 脚本
创建一个名为 test.php 的 PHP 脚本,并添加以下内容:
<?php
$servername = "localhost";
$username = "newuser";
$password = "newpassword";
$dbname = "mydatabase";
// 创建连接
$conn = new mysqli($servername, $username, $password, $dbname);
// 检测连接
if ($conn->connect_error) {
die("连接失败: " . $conn->connect_error);
}
echo "连接成功";
$conn->close();
?> 2 测试脚本
将 test.php 文件放置在 web 服务器的根目录下,/var/www/html/,在浏览器中访问 http://yourdomain.com/test.php,如果看到“连接成功”字样,说明 PHP 与 MySQL 的连接已经成功建立。
FAQs
Q1:为什么我的 PHP 脚本无法连接到 MySQL?
A1:请检查以下问题:
- MySQL 服务是否已启动?
- PHP 是否已安装
php-mysql扩展? php.ini文件中的数据库配置项是否正确?- 用户名、密码和数据库名是否正确?
Q2:如何更改 MySQL 数据库的用户密码?
A2:登录 MySQL,执行以下命令:
ALTER USER 'username'@'localhost' IDENTIFIED BY 'newpassword'; FLUSH PRIVILEGES; EXIT;
这里将 username 替换为要更改密码的用户名,将 newpassword 替换为新的密码。

