CentOS7.3安装MySQL8
这得追溯到刚过完年那会儿,现在想想都心酸。
环境:
CentOS7.3
千万别装最新版的MySQL8!
我亲测,去了官网下了最新版的安装文件,很开心的装结果装到一半,依赖版本不够,装新依赖版本,然后牵扯出其他依赖版本不够。崩溃🤢🤢🤢
目前比较稳妥的版本应该是8.0.13
删掉自带的数据库
在安装MySQL之前先要把CentOS自带的mariadb,如果不卸载的话,在下面的安装中会报错。
查看mariadb版本
rpm -qa | grep mariadb
卸载mariadb
rpm -e mariadb-libs-5.5.56-2.el7.x86_64 --nodeps
去官网找Archives
下载网址:https://dev.mysql.com/downloads/mysql/
下载历史版本网址:https://downloads.mysql.com/archives/community/
选择红帽,然后 version就是8.0.13,你要够大胆可以尝试稍微新一点的版本,但是我装8.0.19就失败了。
下下来名字大概是mysql-8.0.13-1.el7.x86_64.rpm-bundle.tar
字样,那说明咱俩下到了同一个版本👍
安装
解压
tar -xvf mysql-8.0.13-1.el7.x86_64.rpm-bundle.tar
解压以后差不多是这么几个文件
1 | mysql-community-client-8.0.17-1.el7.x86_64.rpm |
必须安装(注意安装顺序‼)
我只装了必须安装
1 | rpm -ivh mysql-community-common-8.0.13-1.el7.x86_64.rpm |
非必须安装(注意安装顺序‼)
1 | rpm -ivh mysql-community-libs-compat-8.0.13-1.el7.x86_64.rpm |
安装过程中可能出现很多错误,但基本上逃不过就是依赖问题,诸如:
1 | error: |
然后缺什么装什么就好 yum install
.
初始化
装好之后就是初始化了,跟再Windows平台类似。
初始化数据库
1 | mysqld --initialize --console |
目录授权,这一步不能放过嗷
chown -R mysql:mysql /var/lib/mysql/
启动MySQL服务
systemctl start mysqld
停止MySQL服务
service mysqld stop
查看初始密码
cat /var/log/mysqld.log
登录
mysql -u root -p
,输入初始密码
更改初始密码
alter USER 'root'@'localhost' IDENTIFIED BY '新密码(必须包含:数字大小写字母特殊字符,长度最小为8位)';
navicat连接数据库
MySQL8授权
对于8的MySQL,新建用户并授权写在一句会报错。所以
1 | mysql> CREATE USER 'username'@'%' IDENTIFIED BY 'yourpassword'; //创建账户 |
配置navicat
配置如下:(username和password写成刚授权的用户的)
连接测试,如果正常配置,没有手残敲错是会成功的。👍
小结
MySQL装了我两天左右,主要还是版本问题,以及依赖关系,以及centOS不推荐用MySQL等等等等。。那一阵心态都崩了,现在想想还好。人家TX云都给的centOS7.6的,为啥阿里还活在7.3?!?!?