【MySQL】在CentOS8纯手动安装 8.0.20版本

之前尝试过YUM安装,但是下载到一般就中断,

受制于网路和其他不可抗力,出现这样的问题也没有很好的解决方案

所以这里采用的是先在windos上下载好文件,然后上传linux安装

下载地址:【点我访问

https://dev.mysql.com/downloads/mysql/

Linux系统版本鱼龙混杂,我不确定到底选什么好

官网提供了一个Linux通用的版本,那就选通用的好了

注意系统位数,Linux也是分为64和32位数区别的【我也不知道为什么要点glibc注释的】

【MySQL】在CentOS8纯手动安装 8.0.20版本

【其实这里选第一个 Compressed Tar Archive的就好了,下我框的这个就是内容多一点,文件更大】

把下载下来的数据库解压包文件上传到linux上面

参见XFTP使用:

解压部分:

tar -xvf mysql-8.0.20-linux-glibc2.12-x86_64.tar

再解压这一个压缩包得到mysql数据库的目录

tar -xvf mysql-8.0.20-linux-glibc2.12-x86_64.tar.xz

先重命名目录,名称太长了

mv mysql-8.0.20-linux-glibc2.12-x86_64 mysql-8.0.20

移动至指定的位置

mv /root/公共/mysql-8.0.20 /usr/local/mysql

设置用户组和用户,及其权限

groupadd g_mysql
useradd -r -g g_mysql mysql_root

创建数据库目录

mkdir -p /data/mysql

为这个库目录给mysql_root设置访问权限

chown mysql_root:g_mysql -R /data/mysql

编写mysql配置文件:

vim /etc/my.cnf

配置文件内容

仔细核对关键信息:

- user 要写我们创建那个mysql组用户

- basedir指的是我们的mysql数据库程序目录

- datadir指的是我们的mysql库目录

[mysqld]

bind-address=0.0.0.0

port=3306

user=mysql_root

basedir=/usr/local/mysql/mysql-8.0.20

datadir=/data/mysql

socket=/tmp/mysql.sock

log-error=/data/mysql/mysql.err

pid-file=/data/mysql/mysql.pid

#character config
character_set_server=utf8mb4

symbolic-links=0

explicit_defaults_for_timestamp=true

【编辑完成按Esc 输入:wq回车退出】

切换到bin中初始化

注意一些参数信息

- basedir

- user

cd /usr/local/mysql/mysql-8.0.20/bin
./mysqld --defaults-file=/etc/my.cnf --basedir=/usr/local/mysql/mysql-8.0.20 --datadir=/data/mysql/ --user=mysql_root --initialize

查看生成的密钥并保留

cat /data/mysql/mysql.err

最后一行的最后几个字就是

【MySQL】在CentOS8纯手动安装 8.0.20版本

dK*nl<2pCp?o

复制服务文件到etc的初始化D中

cp /usr/local/mysql/mysql-8.0.20/support-files/mysql.server /etc/init.d/mysql

启动MySQL服务

service mysql start

成功了

【MySQL】在CentOS8纯手动安装 8.0.20版本

登陆MySQL

./mysql -u root -pdK*nl<2pCp?o

发现无法登录

【MySQL】在CentOS8纯手动安装 8.0.20版本

查看依赖,是没有这个5的文件

libitinfo.so.5 => not found

【MySQL】在CentOS8纯手动安装 8.0.20版本

和这个文章指出的问题完全一样

https://www.cnblogs.com/jiangfeilong/p/10554801.html

【依赖文件】

链接: https://pan.baidu.com/s/1GLizZJ2TpT9iAzJrstlYQA 提取码: z03c

根据上面的依赖信息,可以推断是在lib64目录中存放即可

【MySQL】在CentOS8纯手动安装 8.0.20版本

登陆MySQL测试,正常执行

【MySQL】在CentOS8纯手动安装 8.0.20版本

使用我们之前的那个密码,访问成功!

【安全输入,密码在这里看不见的】

【MySQL】在CentOS8纯手动安装 8.0.20版本

8版本的更新规则语法是这样的:【怪不得一直写5版本的报语法错误】

【MySQL】在CentOS8纯手动安装 8.0.20版本

新版本更新修改:

ALTER USER ‘root‘@‘localhost‘ IDENTIFIED BY ‘password‘ PASSWORD EXPIRE NEVER; #修改加密规则
ALTER USER ‘root‘@‘localhost‘ IDENTIFIED WITH mysql_native_password BY ‘123456‘; #更新一下用户的密码
FLUSH PRIVILEGES;

老版本更新修改

SET PASSWORD = PASSWORD(‘123456‘);
ALTER USER ‘root‘@‘localhost‘ PASSWORD EXPIRE NEVER;
FLUSH PRIVILEGES;

然后退出重新登陆

【MySQL】在CentOS8纯手动安装 8.0.20版本

到这一步应该算是完成了吗?


参考自5.7的安装:

https://blog.csdn.net/qq_37598011/article/details/93489404

他说的中断连接也没有出现啊

关于初次登陆的密码修改

https://blog.csdn.net/muziljx/article/details/81541896

依赖文件缺少

https://www.cnblogs.com/jiangfeilong/p/10554801.html