linux 安装mysql80x

1: 在 /usr/local下 创建mysql文件夹:

1
arduino复制代码mkdir mysql

2: 切换到mysql文件夹下:

1
bash复制代码cd mysql

3: 下载mysql:

1
bash复制代码wget https://dev.mysql.com/get/Downloads/MySQL-8.0/mysql-8.0.20-linux-glibc2.12-x86_64.tar.xz

4: 解压mysql:

1
复制代码tar xvJf mysql-8.0.20-linux-glibc2.12-x86_64.tar.xz

5: 重命名文件夹:

1
bash复制代码mv mysql-8.0.20-linux-glibc2.12-x86_64 mysql-8.0

6: 进入mysql-8.0文件夹:

1
bash复制代码cd mysql-8.0

7: 创建data文件夹 存储文件

1
arduino复制代码mkdir data

8: 创建用户组以及用户和密码

1
2
复制代码groupadd mysql
useradd -g mysql mysql

9: 授权用户:

1
bash复制代码chown -R mysql.mysql /usr/local/mysql/mysql-8.0

10: 切换到bin目录下:

1
bash复制代码cd bin

11: 初始化基础信息(并获得密码):

1
2
3
4
5
6
7
bash复制代码    ./mysqld --user=mysql --basedir=/usr/local/mysql/mysql-8.0 --datadir=/usr/local/mysql/mysql-8.0/data/ --initialize

如果报错提示:
./mysqld: error while loading shared libraries: libaio.so.1: cannot open shared object file: No such file or directory
安装libaio:
yum install -y libaio
再次执行初始化

12: 编辑my.cnf文件:

1
bash复制代码vim /etc/my.cnf

1
2
3
4
5
6
7
8
ini复制代码[mysqld]
basedir=/usr/local/mysql/mysql-8.0/

datadir=/usr/local/mysql/mysql-8.0/data/

socket=/tmp/mysql.sock

character-set-server=UTF8MB4

13: 添加mysqld服务到系统:

1
bash复制代码cp -a ../support-files/mysql.server /etc/init.d/mysql

14: 授权以及添加服务

1
2
3
bash复制代码 chmod +x /etc/init.d/mysql

chkconfig --add mysql

15: 启动mysql

1
sql复制代码service mysql start

16: 查看启动状态

1
lua复制代码service mysql status

17: 将mysql命令添加到服务

1
bash复制代码ln -s /usr/local/mysql/mysql-8.0/bin/mysql /usr/bin

18: 登录mysql

1
2
3
4
5
6
7
8
9
10
11
bash复制代码mysql -uroot -p 

回车后输入第11步骤生成的随机密码

2022.5.24本人用腾讯云 centos8 复现评论区错误:

mysql: error while loading shared libraries: libtinfo.so.5: cannot open shared object file: No such file or directory

执行下面操作即可:

cp /lib64/libtinfo.so.6 /lib64/libtinfo.so.5

19: 修改root密码

1
sql复制代码ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '123456'; 其中123456是新的密码自己设置

20: 使密码生效

1
arduino复制代码 flush privileges;

21: 选择mysql数据库

1
ini复制代码use mysql;

22: 修改远程连接并生效

1
2
3
sql复制代码update user set host='%' where user='root';

flush privileges;

本文转载自: 掘金

开发者博客 – 和开发相关的 这里全都有

0%