MySQL 二进制安装
一、 获取MySQL软件包
~]# wget https://dev.mysql.com/get/Downloads/MySQL-8.0/mysql-8.0.27-linux-glibc2.17-x86_64-minimal.tar
二、创建存放位置并解压软件包
mysql827]# mkdir {data,log}
soft]# tar xf mysql-8.0.27-linux-glibc2.17-x86_64-minimal.tar
[root@docker soft]# mv mysql-8.0.27-linux-glibc2.17-x86_64-minimal /app/mysql827
[root@docker soft]# cd /app/mysql827/
[root@docker mysql827]# ls
bin docs include lib LICENSE man README share support-files
三、修改my.cnf文件(主配置文件)
[root@docker mysql827]# vim /etc/my.cnf
[mysqld]
# 选择默认存储引擎为InnoDB
default-storage-engine=InnoDB
# 用户
user = mysql
# 监听端口
port = 3306
#socket通信设置
socket=/tmp/mysql.sock
# 安装目录
basedir=/app/mysql827
# 数据文件位置
datadir=/app/mysql827/data
# 允许最大连接数
max_connections=512
# 等待关闭连接时间
wait_timeout=600
# 服务端字符集
character-set-server=utf8mb4
# 错误日志
log-error=/app/mysql827/log/error.log
# 默认使用“mysql_native_password”插件认证
default_authentication_plugin=mysql_native_password
#server-id=10
log_bin=gh
## 兼容sql_mode
sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION
四、添加数据库用户及修改权限
[root@docker app]# useradd mysql -s /sbin/nologin
[root@docker app]# chown -R mysql:mysql mysql827/
五、初始化数据库
[root@docker mysql827]# /app/mysql827/bin/mysqld --user=mysql --basedir=/app/mysql827 --datadir=/app/mysql827/data --initialize
官方推荐:
初始化的时候添加有密码 –initialize (官方推荐) 初始化密码放在error.log日志里
初始化的时候没有密码:–initialize-insecure
六、拷贝启动文件,方便在控制端启动服务并启动服务
[root@docker mysql827]# cp /app/mysql827/support-files/mysql.server /etc/init.d/mysql
[root@docker mysql827]# /etc/init.d/mysql start | stop
七、修改环境变量(必须是root权限如果不是root用户您可以使用echo命令)
[root@docker mysql827]# vim /etc/profile
export PATH=$PATH:/app/mysql827/bin
八、登陆数据库
[root@docker mysql827]# mysql -uroot -p # 密码error.log(初始密码)
九、 修改登陆密码
mysql> alter user 'root'@'localhost' identified with mysql_native_password by 'root123456';
Query OK, 0 rows affected (0.00 sec)