安装
下载安装包
wget https://dev.mysql.com/get/Downloads/MySQL-8.0/mysql-8.0.21-linux-glibc2.12-x86_64.tar.xz
或者
https://dev.mysql.com/downloads/mysql/

解压
tar xvJf mysql-8.0.21-linux-glibc2.12-x86_64.tar.xz

移动到安装目录
mv mysql-8.0.21-linux-glibc2.12-x86_64 /usr/local/mysql-8.0

新建data文件夹
mkdir data
如果要单独切换myslq用户
创建用户组以及用户和密码
groupadd mysql
useradd -g mysql mysql
chown -R mysql.mysql /usr/local/mysql-8.0
切换到bin目录下
cd bin
初始化基础信息
./mysqld --user=mysql --basedir=/usr/local/mysql-8.0 --datadir=/usr/local/mysql-8.0/data/ --initialize
记住初始化中返回的临时密码
增加my.cnf文件
vi /etc/my.cnf

my.cnf配置信息
[mysqld]
port=3307
basedir=/usr/local/mysql-8.0/
datadir=/usr/local/mysql-8.0/data/
socket=/tmp/mysql.sock
character-set-server=UTF8MB4添加mysqld服务到系统
cp -a ./support-files/mysql.server /etc/init.d/mysql
授权执行
chmod +x /etc/init.d/mysql
加入到系统服务
chkconfig --add mysql
启动mysql
service mysql start
查看启动状态
service mysql status
将mysql命令添加到服务
ln -s /usr/local/mysql-8.0/bin/mysql /usr/bin
账号配置
登录mysql mysql -uroot -p 密码使用之前随机生成的密码

修改root密码 其中123456是新的密码自己设置
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '123456';
刷新sql生效
flush privileges;
选择mysql数据库
use mysql;
修改远程连接并生效 ,host=%
update user set host='%' where user='root';
新增用户
创建新的用户
create user 'username'@'host' identified with mysql_native_password by 'password';
其中username为自定义的用户名;host为登录域名,host为'%'时表示为 任意IP,为localhost时表示本机,或者填写指定的IP地址;paasword为密码
修改密码及访问规则
alter user 'username'@'%' identified with mysql_native_password by 'password';

授权
grant all privileges on . to 'username'@'%' with grant option;
其中*.*第一个*表示所有数据库,第二个*表示所有数据表,如果不想授权全部那就把对应的*写成相应数据库或者数据表;username为指定的用户;%为该用户登录的域名
撤销授权
#收回权限(不包含赋权权限)
revoke all privileges on . from user_name;
revoke all privileges on user_name.* from user_name;
收回赋权权限
revoke grant option on . fromuser_name;
修改端口
vi /etc/my.cnf
增加or修改
port=12345