Mysql 5.7安装部署教程
环境
1.CentOS Linux release 7.8.2003 (Core)
2.Docker-ce.x86_64 18.06.3.ce-3.el7
3.Mysql 5.7
安装方式
1.yum在线安装
2.rpm包安装
3.二进制安装
4.docker快速安装
安装教程
1.查看是否有安装其他mysql,有则卸载
[root@linux01 ~]# rpm -qa|grep mysql
[root@linux01 ~]# rpm -qa|grep mariadb|xargs yum remove -y
2.yum在线安装
配置yum源
[root@linux01 ~]# rpm -Uvh http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm
安装mysql
[root@linux01 ~]# yum -y install mysql-community-server
启动并配置开机自启
[root@linux01 ~]# systemctl start mysqld && systemctl enable mysqld
查看初始密码
[root@linux01 ~]# cat /var/log/mysqld.log | grep passw
自行修改密码,修改配置文件
3.rpm离线安装
下载安装包: mysql-5.7.35-1.el7.x86_64.rpm-bundle.tar
[root@linux01 ~]# wget --no-check-certificate https://mirrors.tuna.tsinghua.edu.cn/mysql/downloads/MySQL-5.7/mysql-5.7.35-1.el7.x86_64.rpm-bundle.tar
安装依赖包
[root@linux01 ~]# rpm -ivh libaio-0.3.109-13.el7.x86_64.rpm
[root@linux01 ~]# rpm -ivh libaio-devel-0.3.109-13.el7.x86_64.rpm
解压
[root@linux01 ~]# mkdir tmp
[root@linux01 ~]# tar xf mysql-5.7.35-1.el7.x86_64.rpm-bundle.tar -C tmp/
安装,按下图顺序安装四个rpm即可
[root@linux01 tmp]# rpm -ivh mysql-community-common-5.7.35-1.el7.x86_64.rpm
警告:mysql-community-common-5.7.35-1.el7.x86_64.rpm: 头V3 DSA/SHA256 Signature, 密钥 ID 5072e1f5: NOKEY
准备中... ################################# [100%]
正在升级/安装...
1:mysql-community-common-5.7.35-1.e################################# [100%]
[root@linux01 tmp]# rpm -ivh mysql-community-libs-5.7.35-1.el7.x86_64.rpm
警告:mysql-community-libs-5.7.35-1.el7.x86_64.rpm: 头V3 DSA/SHA256 Signature, 密钥 ID 5072e1f5: NOKEY
准备中... ################################# [100%]
正在升级/安装...
1:mysql-community-libs-5.7.35-1.el7################################# [100%]
[root@linux01 tmp]# rpm -ivh mysql-community-client-5.7.35-1.el7.x86_64.rpm
警告:mysql-community-client-5.7.35-1.el7.x86_64.rpm: 头V3 DSA/SHA256 Signature, 密钥 ID 5072e1f5: NOKEY
准备中... ################################# [100%]
正在升级/安装...
1:mysql-community-client-5.7.35-1.e################################# [100%]
[root@linux01 tmp]# rpm -ivh mysql-community-server-5.7.35-1.el7.x86_64.rpm
警告:mysql-community-server-5.7.35-1.el7.x86_64.rpm: 头V3 DSA/SHA256 Signature, 密钥 ID 5072e1f5: NOKEY
准备中... ################################# [100%]
正在升级/安装...
1:mysql-community-server-5.7.35-1.e################################# [100%]
启动并配置开机自启
[root@linux01 tmp] systemctl start mysqld && systemctl enable mysqld
查看初始密码
[root@linux01 tmp] cat /var/log/mysqld.log | grep passw
2022-04-15T05:16:14.006924Z 1 [Note] A temporary password is generated for root@localhost: ?MM20+&xaqdC
自行修改密码,修改配置文件
4.二进制离线安装
下载安装包:mysql-5.7.35-el7-x86_64.tar.gz
[root@linux01 ~]# wget --no-check-certificate https://mirrors.tuna.tsinghua.edu.cn/mysql/downloads/MySQL-5.7/mysql-5.7.35-el7-x86_64.tar.gz
解压并创建软链接
[root@linux01 ~]# tar xf mysql-5.7.35-el7-x86_64.tar.gz -C /usr/local/
[root@linux01 ~]# ln -s /usr/local/mysql-5.7.35-el7-x86_64/ /usr/local/mysql
初始化
[root@linux01 ~]# cd /usr/local/mysql/bin
# 查看帮助
[root@linux01 bin]# ./mysqld --verbose --help
[root@linux01 bin]# ./mysqld --initialize
2022-04-15T05:34:26.463437Z 0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option (see documentation for more details).
2022-04-15T05:34:26.650782Z 0 [Warning] InnoDB: New log files created, LSN=45790
2022-04-15T05:34:26.683791Z 0 [Warning] InnoDB: Creating foreign key constraint system tables.
2022-04-15T05:34:26.739657Z 0 [Warning] No existing UUID has been found, so we assume that this is the first time that this server has been started. Generating a new UUID: b6ea7917-bc7d-11ec-a79f-000c29ceb6b6.
2022-04-15T05:34:26.743043Z 0 [Warning] Gtid table is not ready to be used. Table 'mysql.gtid_executed' cannot be opened.
2022-04-15T05:34:27.716897Z 0 [Warning] A deprecated TLS version TLSv1 is enabled. Please use TLSv1.2 or higher.
2022-04-15T05:34:27.716925Z 0 [Warning] A deprecated TLS version TLSv1.1 is enabled. Please use TLSv1.2 or higher.
2022-04-15T05:34:27.717788Z 0 [Warning] CA certificate ca.pem is self signed.
2022-04-15T05:34:28.183889Z 1 [Note] A temporary password is generated for root@localhost: s4z01FYiyB:d
初始化最后一行即可查看初始密码
5.docker安装
[root@linux01 ~]# docker run -d --name=mysql --rm -e MYSQL_ROOT_PASSWORD=123456 mysql:5.7
[root@linux01 ~]# docker cp mysql:/etc/mysql/mysql.conf.d .
[root@linux01 ~]# mkdir -p /data/mysql
[root@linux01 ~]# mv mysql.conf.d /data/mysql/conf
[root@linux01 ~]# ll /data/mysql/conf/
总用量 4
-rw-r--r-- 1 root root 1589 3月 30 02:09 mysqld.cnf
[root@linux01 ~]# docker run -d --name mysql -p3306:3306 -v /data/mysql/data:/var/lib/mysql -v /data/mysql/conf:/etc/mysql/mysql.conf.d -v /data/mysql/logs:/var/log/mysql -e MYSQL_ROOT_PASSWORD=123456 mysql:5.7
附mysql配置文件参考
[root@linux01 ~]# cat /etc/my.cnf
[mysqld]
pid-file = /var/run/mysqld/mysqld.pid
socket = /var/run/mysqld/mysqld.sock
datadir = /var/lib/mysql
symbolic-links=0
character-set-server = utf8
#skip-networking
innodb_print_all_deadlocks = 1
innodb_file_per_table=1
max_connections = 2000
max_connect_errors = 6000
open_files_limit = 65535
table_open_cache = 128
max_allowed_packet = 4M
binlog_cache_size = 1M
max_heap_table_size = 8M
tmp_table_size = 16M
read_buffer_size = 2M
read_rnd_buffer_size = 8M
sort_buffer_size = 8M
join_buffer_size = 28M
key_buffer_size = 4M
thread_cache_size = 8
query_cache_type = 1
query_cache_size = 8M
query_cache_limit = 2M
ft_min_word_len = 4
log-bin = master-bin
log_bin_index=master-bin.index
server-id = 1
log-slave-updates=true
binlog_format = mixed
performance_schema = 0
explicit_defaults_for_timestamp
#lower_case_table_names = 1
interactive_timeout = 28800
wait_timeout = 28800
# Recommended in standard MySQL setup
sql_mode=NO_ENGINE_SUBSTITUTION,NO_AUTO_CREATE_USER,STRICT_TRANS_TABLES
[mysql.server]
user=mysql
[mysqldump]
quick
max_allowed_packet = 16M
[myisamchk]
key_buff
er_size = 8M
sort_buffer_size = 8M
read_buffer = 4M
write_buffer = 4M