手动在CentOS7.4环境下,安装MySQL5.7.X版本的方法。
1、安装MySQL版本:5.7.25
2、下载地址
https://dev.mysql.com/downloads/mysql/5.7.html#downloads
(随着时间的推移,请以最新官网的下载地址为准)
3、使用wget命令使用断点传输的方式,下载相关rpm文件(或者直接在windows上下载完上传到linux上)
https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-community-common-5.7.25-1.el7.x86_64.rpm
https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-community-libs-5.7.25-1.el7.x86_64.rpm
https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-community-devel-5.7.25-1.el7.x86_64.rpm
https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-community-client-5.7.25-1.el7.x86_64.rpm
https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-community-server-5.7.25-1.el7.x86_64.rpm
4、下载完成后,进入到对应的目录中,进行依次安装
(注重:安装有先后顺序,按照上面的下载顺序安装就行了)
rpm -ivh mysql-community-common-5.7.25-1.el7.x86_64.rpm --force --nodeps
rpm -ivh mysql-community-libs-5.7.25-1.el7.x86_64.rpm --force --nodeps
rpm -ivh mysql-community-devel-5.7.25-1.el7.x86_64.rpm --force --nodeps
rpm -ivh mysql-community-client-5.7.25-1.el7.x86_64.rpm --force --nodeps
rpm -ivh mysql-community-server-5.7.25-1.el7.x86_64.rpm --force --nodeps
(注重:其中–force --nodeps,要根据情况,适当添加。否则部分机器安装会出现异常)
(如果出现问题卸载代码)
#查找linux下安装的mysql
rpm -qa | grep -i mysql
rpm -e mysql-community-common-5.7.25-1.el7.x86_64.rpm
rpm -e mysql-community-libs-5.7.25-1.el7.x86_64.rpm
rpm -e mysql-community-devel-5.7.25-1.el7.x86_64.rpm
rpm -e mysql-community-client-5.7.25-1.el7.x86_64.rpm
rpm -e mysql-community-server-5.7.25-1.el7.x86_64.rpm
//可以增加参数 --nodeps ,就可以强制删除,但是一般不推荐这样做,因为依赖于该软件包的程序可能无法运行
5、安装完成后,首先需要启动服务。
(注重,CentOS7以上版本的服务启动,同6是不同的)
systemctl start mysqld
6、确认安装成功,创建初始root管理员密码
改 /etc/my.cnf
vim /etc/my.cnf
在[mysqld]中添加
skip-grant-tables=1
这一行配置让 mysqld 启动时不对密码进行验证
7、重启 mysqld 服务
systemctl restart mysqld
8、改root的登陆密码
1)使用 root 用户登陆到 mysql
mysql -uroot -p (直接搜索回车,密码为空)
2)切换数据库
use mysql;
3)升级 user 表
update user set authentication_string = password('你的密码'), password_expired = 'N', password_last_changed = now() where user = 'root';
(给root设置完密码后编辑etc/my.conf文件,注释掉跳过密码的配置skip-grant-tables=1)
//编辑文件
vim /etc/my.cnf
//将里面文件注释掉
#skip-grant-tables=1
//重启服务
systemctl restart mysqld
9、密码改成功后,可以登陆mysql,进行客户端连接设置。
(备注:不设置的话,客户端Navicat无法连接)
//授权远程连接权限
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '你的密码' WITH GRANT OPTION;
flush privileges;
刷新版表数据
flush privileges;
退出
10、设置MySQL的编码,防止乱码产生,在[mysqld]下,添加编码方式
character-set-server=utf8
(详细可见附件文档)
11、重启MySQL服务
systemctl restart mysqld
【FAQ】
1、在香港区的服务器CentOS下安装,出现服务无法启动的问题。
[root@syne-hk-test mysql-5.7]# systemctl start mysqld
Job for mysqld.service failed because the control process exited with error code. See “systemctl status mysqld.service” and “journalctl -xe” for details.
经过深入排查,原因是没有安装libaio.so.1,安装就行了。
yum install libaio
2、ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.
登录查看数据库的时候会出现,需要修改为安全的密码
alter user user() identified by 'root123';
2.1、ERROR 1819 (HY000): Your password does not satisfy the current policy requirements
密码太简单,改成比较安全的密码。
有时候安装完修改完密码,库不见了,不知道什么原因,腾讯云出现的问题,后期见到再添加