MySQL 5.7 for CentOS
安装步骤详解
1. 环境准备
确保CentOS系统满足以下条件:
确保网络连接正常,以便下载必要的软件包和仓库配置。
确保wget工具已安装,用于下载MySQL安装包。
yum install wget y
2. 卸载旧版本的MySQL(如有)
检查系统中是否已安装MySQL相关包。
rpm qa | grep i mysql
卸载MySQL社区版相关包。
rpm ev nodeps mysqlcommunitycommon5.7.441.el7.x86_64 rpm ev nodeps mysql57communityreleaseel710.noarch rpm ev nodeps mysqlcommunitylibs5.7.441.el7.x86_64 rpm ev nodeps mysqlcommunityserver5.7.441.el7.x86_64 rpm ev nodeps mysqlcommunityclient5.7.441.el7.x86_64
查找并删除MySQL相关文件和目录。
find / name mysql rm rf /var/lib/mysql rm rf /usr/lib64/mysql rm rf /usr/share/mysql
删除MySQL配置文件。
rm rf /etc/my.cnf
再次检查系统中是否还有MySQL相关包。
rpm qa | grep i mysql rpm qa | grep mariadb
3. 下载与安装MySQL 5.7
下载MySQL 5.7社区版的YUM仓库配置包。
wget https://dev.mysql.com/get/mysql57communityreleaseel710.noarch.rpm
安装MySQL 5.7社区版仓库配置包。
yum y install mysql57communityreleaseel710.noarch.rpm
导入MySQL的公钥。
rpm import https://repo.mysql.com/RPMGPGKEYmysql2022
安装MySQL社区服务器。
yum y install mysqlcommunityserver
启动MySQL服务。
systemctl start mysqld.service
检查MySQL服务状态。
systemctl status mysqld.service
获取临时密码。
grep "password" /var/log/mysqld.log
登录MySQL。
mysql uroot p
修改root用户密码。
ALTER USER 'root'@'localhost' IDENTIFIED BY 'new_password'; exit;
重启MySQL服务。
service mysqld restart
使用新密码登录MySQL。
mysql uroot p
4. 配置MySQL 5.7
配置密码安全策略(可选)。
set global validate_password_policy=0; set global validate_password_mixed_case_count=0; set global validate_password_number_count=0; set global validate_password_special_char_count=0; set global validate_password_length=3;
修改root用户密码。
ALTER USER 'root'@'localhost' IDENTIFIED BY 'new_password'; exit;
重启MySQL服务。
service mysqld restart
使用新密码登录MySQL。
mysql uroot p
配置编码格式。
查看编码格式。
status;
设置客户端编码。
[client] defaultcharacterset=utf8
设置服务器编码。
set character_set_server=utf8; set collationserver=utf8_general_ci;
设置其他编码相关配置。
set character_set_client=utf8; set character_set_connection=utf8; set character_set_database=utf8; set character_set_results=utf8; set character_set_server=utf8;
配置远程连接。
授予具有完全权限的root用户从任何地方连接到数据库。
GRANT ALL PRIVILEGES ON *.* TO root@'%' IDENTIFIED BY 'new_password' WITH GRANT OPTION; FLUSH PRIVILEGES;
配置防火墙规则。
关闭防火墙(如果需要)。
firewallcmd zone=public addport=3306/tcp permanent firewallcmd reload
检查防火墙状态。
systemctl status firewalld
开放3306端口后,重新载入防火墙规则。
firewallcmd reload
获取系统的IP地址。
ifconfig
使用数据库连接工具Navicat进行连接,输入主机、端口、用户名和密码,点击连接测试,提示连接成功。
5. 测试建库建表和字符集
使用Navicat远程连接到数据库后,手动进行建库建表的操作,建表如下:
CREATE TABLEtest
(id
int(11) NOT NULL AUTO_INCREMENT,name
varchar(255) DEFAULT NULL, PRIMARY KEY (id
) ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
插入数据进行测试。
INSERT INTOtest
(name
) VALUES ('测试'); SELECT * FROMtest
;
至此,CentOS上安装MySQL 5.7完成,并且进行了基本的配置和测试。