mysql主从加MHA+keepalived部署(一) —— mysql安装

眉间皱痕 提交于 2019-11-28 07:14:54

--环境
虚机A: 192.168.3.3 redhat7
虚机B: 192.168.3.4 redhat7

--安装mysql版本
5.7.26
官网下载地址https://dev.mysql.com/downloads/mysql

--两台服务器上传安装包:
mysql-5.7.26-1.el7.x86_64.rpm-bundle.tar


--关闭selinux
setenforce 0
getenforce

vi /etc/selinux/config 

SELINUX=disabled

--关闭防火墙
systemctl status firewalld.service
systemctl stop firewalld.service
systemctl disable firewalld.service

--检查是否有mariadb预装的包,如有卸载
[root@zhangry-test1]# rpm -qa|grep maria
mariadb-libs-5.5.56-2.el7.x86_64
[root@zhangry-test1]# rpm -e mariadb-libs-5.5.56-2.el7.x86_64 --nodeps
[root@zhangry-test1]# rpm -qa|grep maria


--解压文件
tar -xvf mysql-5.7.26-1.el7.x86_64.rpm-bundle.tar

--安装rpm包,注意按顺序安装,否则有依赖关系报错
[root@zhangry-test1 software]# rpm -ivh mysql-community-common-5.7.26-1.el7.x86_64.rpm 
warning: mysql-community-common-5.7.26-1.el7.x86_64.rpm: Header V3 DSA/SHA1 Signature, key ID 5072e1f5: NOKEY
Preparing...                          ################################# [100%]
Updating / installing...
   1:mysql-community-common-5.7.26-1.e################################# [100%]
[root@zhangry-test1 software]# rpm -ivh mysql-community-libs-5.7.26-1.el7.x86_64.rpm 
warning: mysql-community-libs-5.7.26-1.el7.x86_64.rpm: Header V3 DSA/SHA1 Signature, key ID 5072e1f5: NOKEY
Preparing...                          ################################# [100%]
Updating / installing...
   1:mysql-community-libs-5.7.26-1.el7################################# [100%]
[root@zhangry-test1 software]# rpm -ivh mysql-community-client-5.7.26-1.el7.x86_64.rpm 
warning: mysql-community-client-5.7.26-1.el7.x86_64.rpm: Header V3 DSA/SHA1 Signature, key ID 5072e1f5: NOKEY
Preparing...                          ################################# [100%]
Updating / installing...
   1:mysql-community-client-5.7.26-1.e################################# [100%]
[root@zhangry-test1 software]# rpm -ivh mysql-community-devel-5.7.26-1.el7.x86_64.rpm 
warning: mysql-community-devel-5.7.26-1.el7.x86_64.rpm: Header V3 DSA/SHA1 Signature, key ID 5072e1f5: NOKEY
Preparing...                          ################################# [100%]
Updating / installing...
   1:mysql-community-devel-5.7.26-1.el################################# [100%]
[root@zhangry-test1 software]# rpm -ivh mysql-community-server-5.7.26-1.el7.x86_64.rpm 
warning: mysql-community-server-5.7.26-1.el7.x86_64.rpm: Header V3 DSA/SHA1 Signature, key ID 5072e1f5: NOKEY
Preparing...                          ################################# [100%]
Updating / installing...
   1:mysql-community-server-5.7.26-1.e################################# [100%]

[root@zhangry-test1 software]# rpm -ivh mysql-community-libs-compat-5.7.26-1.el7.x86_64.rpm
warning: mysql-community-libs-compat-5.7.26-1.el7.x86_64.rpm: Header V3 DSA/SHA1 Signature, key ID 5072e1f5: NOKEY
Preparing...                          ################################# [100%]
Updating / installing...
   1:mysql-community-libs-compat-5.7.2################################# [100%]
   

--创建对应data和log目录
cd /data
mkdir mysql
cd mysql
mkdir data
mkdir log

--修改权限
cd /data
chown -R mysql:mysql mysql/


--编辑配置文件 my.cnf

vi /etc/my.cnf

skip-grant-tables

[mysqld]
max-connections=1200
max_allowed_packet=50M
lower_case_table_names=1
character-set-server=utf8
event_scheduler=ON
explicit_defaults_for_timestamp=true   

#InnoDB
default-storage-engine=InnoDB
innodb_data_home_dir=/data/mysql/data
innodb_data_file_path=ibdata1:10M:autoextend
innodb_log_group_home_dir = /data/mysql/data
innodb_buffer_pool_size = 128M
innodb_log_file_size = 100M
innodb_flush_log_at_trx_commit = 1
innodb_lock_wait_timeout = 50


#data
datadir=/data/mysql/data

#error log
log-error=/data/mysql/log/error.log


#slow log
slow_query_log=on
long_query_time=1
slow_query_log_file=/data/mysql/log/slow-query.log

[mysqldump]
quick
max_allowed_packet=2G
default-character-set=utf8

[myisamchk]
key_buffer=256M
sort_buffer_size=256M
read_buffer=8M
write_buffer=8M

--初始化数据库,要加--no-defaults,否则有error报错

/usr/bin/mysql_install_db --no-defaults --user=mysql --datadir=/data/mysql/data


--启动mysql服务
systemctl start mysqld

--启动的时候会报
 [Warning] Changed limits: max_open_files: 5000 (requested 6000)
 
max_open_files原因是在 mysqld.service中写死了
cat /usr/lib/systemd/system/mysqld.service | grep -A2 open_files_limit
# Sets open_files_limit
LimitNOFILE = 5000

修改该参数:
mkdir /usr/lib/systemd/system/mysqld.service.d

cd  /usr/lib/systemd/system/mysqld.service.d
vi override.conf

[Service]
LimitNOFILE=40960

执行
systemctl daemon-reload
systemctl restart mysqld

--修改root密码
use mysql
flush privileges;
SET PASSWORD FOR 'root'@'localhost' = PASSWORD('mysql');
commit;

vi /etc/my.cnf

去掉skip-grant-tables参数
重启服务
systemctl restart mysqld


--在两台服务器上重复上述操作

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!