1、去官网下载安装包
下载链接:点击打开链接
2、下载解压
wget https://dev.mysql.com/get/Downloads/MySQL-8.0/mysql-8.0.20-linux-glibc2.12-x86_64.tar.xz
tar xvJf mysql-8.0.20-linux-glibc2.12-x86_64.tar.xz
# 移动压缩包到usr/local目录下,并重命名文件
mv mysql-8.0.20-linux-glibc2.12-x86_64 /usr/local/mysql
3、为MySQL创建一个文件夹data,用于存放数据
mkdir /data/mysql/data
# 创建日志目录
mkdir /data/mysql/log
4、创建 mysql 用户组和 mysql 用户
groupadd mysql
useradd -g mysql mysql
5、授权
chown -R mysql.mysql /usr/local/mysql
6、初始化基础信息
cd /usr/local/mysql/bin/
./mysqld --user=mysql --basedir=/usr/local/mysql --datadir=/data/mysql/data --initialize
在这里报错:./mysqld: error while loading shared libraries: libaio.so.1: cannot open shared object file: No such file or directory
出现该问题首先检查该链接库文件有没有安装使用 rpm -qa|grep libaio
命令进行核查
运行该命令后发现系统中无该链接库文件
使用命令,yum install libaio1 libaio-dev
安装
初始化,如果只是用mysqld --initialize
命令,5.7的版本会默认生成一个随机的密码,最好直接设置为空密码,登录好了以后再自行修改密码
cd /usr/local/mysql/bin/
./mysqld --user=mysql --basedir=/usr/local/mysql --datadir=/data/mysql/data --initialize-insecure --explicit_defaults_for_timestamp
7、创建软连接 将mysql命令添加到服务
ln -s /usr/local/mysql/bin/mysql* /usr/bin/
安装成功后,继续运行数据库的初始化命令,成功后得到临时密码
8、mysql配置
cp -a /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
9、修改my.cnf文件
vim /etc/my.cnf
[mysqld]
port=3306
datadir=/data/mysql/data
socket=/tmp/mysql.sock
symbolic-links=0
character-set-server=UTF8MB4
log-error=/data/mysql/log/mysql.log
pid-file=/data/mysql/log/mysql.pid
10、授权以及添加服务
chmod +x /etc/init.d/mysqld
chkconfig --add mysql
11、启动MySQL服务
/etc/init.d/mysqld start
12、登录MySQL
MySql 从8.0开始修改密码有了变化,在user表加了字段authentication_string
,修改密码前先检查authentication_string
是否为空
mysql -uroot -p密码
# 密码默认为空,修改密码
mysql> use mysql;
mysql> ALTER user 'root'@'localhost' IDENTIFIED BY '123456';
# 密码不为空,重置密码
mysql> use mysql;
mysql> ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '123123';
mysql> flush privileges;
13、修改远程连接并生效,退出
mysql> update user set host='%' where user='root';
mysql> flush privileges;
mysql> exit;