一、使用root用户创建用户:
执行命令
groupadd mysql
useradd -d /home/mysql -s /bin/bash -g mysql mysql
二、安装mysql
1、使用主机mysql用户操作
安装包mysql-8.0.18-linux-glibc2.12-x86_64.tar 上传到mysql下面
解压后得到三个:
mysql-test-8.0.18-linux-glibc2.12-x86_64.tar.xz
mysql-router-8.0.18-linux-glibc2.12-x86_64.tar.xz
mysql-8.0.18-linux-glibc2.12-x86_64.tar.xz
我们只使用mysql-8.0.18-linux-glibc2.12-x86_64.tar.xz,解压该安装包,最终得到mysql-8.0.18-linux-glibc2.12-x86_64文件夹,改名改文件夹为mysql8018
2、使用主机root用户改名/etc/my.cnf为/etc/my.cnf.bak
3、使用主机mysql用户操作(执行本步骤先看下面的“重要说明”)
执行以下命令:
cd /home/mysql/mysql8018/
mkdir tmp
cd /home/mysql/mysql8018/bin
./mysqld --initialize --basedir=/home/mysql/mysql8018 --datadir=/home/mysql/mysql8018/data/ --user=mysql
重要说明:上面命令会得到类似下面信息:
其中红色方框中的字符串为数据库用户root的初始化密码,这个要记下来。
4、使用主机root用户操作
改名/etc/my.cnf.bak为/etc/my.cnf
修改/etc/my.cnf内容为:
[client]
port = 3306
socket = /home/mysql/mysql8018/tmp/mysql.sock
[mysqld]
init-connect='SET NAMES utf8'
basedir=/home/mysql/mysql8018
datadir=/home/mysql/mysql8018/data
socket=/home/mysql/mysql8018/tmp/mysql.sock
max_connections=1000
character-set-server=utf8
default-storage-engine=INNODB
bind-address=0.0.0.0
log_bin=mysql-bin
relay_log=mysql-relay-bin
skip-slave-start=1
binlog_do_db=mediation
binlog-ignore-db=mysql,sys,information_schema,performance_schema
server-id=1
event_scheduler=ON
default-time-zone="+8:00"
说明:default-time-zone的值要与主机的时区保持一致
5、使用主机mysql用户操作
cd /home/mysql/mysql8018/bin
启动mysql:
./mysqld_safe &
访问mysql数据库
./ mysql -uroot -p ----这里回车后会提示输入密码,该密码是第3步中获取到的密码
登陆数据库后执行下面sql语句(先参考下面图片):
a、修改数据库用户root的密码为“MyNewPass@123”
ALTER USER root@localhost IDENTIFIED BY 'MyNewPass@123';
b、
use mysql
c、
update user set host='%' where user='root' limit 1;
d、修改加密规则
ALTER USER 'root'@'%' IDENTIFIED BY 'MyNewPass@123' PASSWORD EXPIRE NEVER;
e、更新密码,这是最后的密码:“MyNewPass@123”
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'MyNewPass@123';
f、刷新权限
FLUSH PRIVILEGES;
如下图:
重要:请牢记修改后的数据库用户root的密码