在CentOS上安装MySQLi是一个常见的任务,MySQLi是PHP中用于与MySQL数据库交互的扩展,以下是一个详细的指南,包括步骤、命令和常见问题解答。
安装前的准备工作
1、更新系统:确保你的CentOS系统是最新的,运行以下命令:
sudo yum update y
2、检查已安装的MySQL版本:如果系统中已经安装了MariaDB(MySQL的一个分支),可以选择卸载它或者保留,检查是否已安装MariaDB:
ps aux | grep mariadb
如果存在,可以停止服务并卸载:
sudo systemctl stop mariadb.service sudo yum remove mariadbserver mariadblibs y
添加MySQL Yum仓库
根据你使用的CentOS版本,添加相应的MySQL YUM仓库,以CentOS 7为例:
wget https://dev.mysql.com/get/mysql57communityreleaseel710.noarch.rpm sudo rpm ivh mysql57communityreleaseel710.noarch.rpm
对于CentOS 8,使用以下命令:
wget https://dev.mysql.com/get/mysql80communityreleaseel81.noarch.rpm sudo rpm ivh mysql80communityreleaseel81.noarch.rpm
安装MySQL
1、安装MySQL服务器:
sudo yum install mysqlcommunityserver y
2、启动MySQL服务并设置开机自启:
sudo systemctl start mysqld sudo systemctl enable mysqld
3、查看MySQL服务状态:
sudo systemctl status mysqld
4、获取临时root密码:
sudo grep 'temporary password' /var/log/mysqld.log
配置MySQL
1、连接到MySQL:
使用上面获取的临时密码登录MySQL:
mysql u root p
2、修改root密码:
ALTER USER 'root'@'localhost' IDENTIFIED BY 'NewPassword!';
3、安全配置:
运行以下命令进行安全配置:
sudo mysql_secure_installation
按照提示进行操作,建议删除匿名用户、禁止远程root登录、删除测试数据库并重新加载权限表。
安装PHP和MySQLi扩展
1、安装PHP和常用模块:
sudo yum install php phpmysqlnd phpfpm y
2、重启Apache或Nginx服务:
如果你使用的是Apache:
sudo systemctl restart httpd
如果你使用的是Nginx:
sudo systemctl restart nginx
验证MySQLi安装
创建一个PHP文件来验证MySQLi是否正确安装:
<?php phpinfo(); ?>
将此文件保存为info.php
,并通过浏览器访问http://your_server_ip/info.php
,查找mysqli
部分,确认其已正确安装。
常见问题及解答(FAQs)
Q1: 如何更改MySQL的数据目录?
A1: 要更改MySQL的数据目录,你需要编辑MySQL配置文件(通常是/etc/my.cnf
或/etc/mysql/my.cnf
),找到datadir
参数并修改为你希望的新路径,停止MySQL服务,移动现有数据目录到新位置,最后重新启动MySQL服务。
[mysqld] datadir=/new/data/directory
注意:更改数据目录后,可能需要调整文件权限和所有权,以确保MySQL能够访问新目录。
Q2: 如何在CentOS上安装指定版本的MySQL?
A2: 要在CentOS上安装指定版本的MySQL,你需要先禁用默认的MySQL存储库,然后启用所需版本的存储库,要安装MySQL 5.7而不是默认的MySQL 8,你可以运行以下命令:
sudo yumconfigmanager disable mysql80community sudo yumconfigmanager enable mysql57community sudo yum install mysqlcommunityserver y
这将安装MySQL 5.7版本,记得根据你的需求调整版本号。