1.下载程序包 mysql-5.7.33-linux-glibc2.12-x86_64.tar.gz ,解压至/opt/app/mysql
2.配置/etc/my.cnf
[mysql]
socket=/opt/app/mysql/mysql.sock
# set mysql client default chararter
default-character-set=utf8
[mysqld]
socket=/opt/app/mysql/mysql.sock
# set mysql server port
port = 20000 #默认是3306,这里发现3306已经被占用,因此防止这种情况发生,可以避免使用3306mysql默认端口
# set mysql install base dir
basedir=/opt/app/mysql
# set the data store dir
datadir=/opt/app/mysql/data
# set the number of allow max connnection
max_connections=200
# set server charactre default encoding
character-set-server=utf8
# the storage engine
default-storage-engine=INNODB
lower_case_table_names=1
max_allowed_packet=16M
explicit_defaults_for_timestamp=true
# 主从配置
server-id=7 #设置主服务器的ID(不能和别的服务器重复,建议使用ip的最后一段)
innodb_flush_log_at_trx_commit=2 #
sync_binlog=1 #开启binlog日志同步功能
log-bin=mysql-bin-7 #binlog日志文件名
expire_logs_days=7 #保存天数
[mysql.server]
user=mysql
basedir=/opt/app/mysql
3.初始化mysql,注意这步需要保存一个密码
cd /opt/mysql
./bin/mysqld --initialize --user=root --basedir=/opt/app/mysql/ --datadir=/opt/app/mysql/data/
4.启动nohup ./bin/mysqld --user=root >mysql.out &
5.登录 ./bin/mysql -h127.0.0.1 -uroot -P20000 -p
6.改密 set PASSWORD=PASWWORD('123456')
7.主从配置
mysql>grant replication slave on *.* to 'mark'@'192.168.56.%' identified by '123456';
##授权给从数据库服务器用户名mark,密码123456,192.168.56.%使用通配符表示该网段下所有服务器均可使用
mysql>show master status ; ##查看主库的状态 file,position这两个值很有用,记一下。要放到slave配置中
mysql> change master to master_host='192.168.56.5', master_user='mark' ,master_password='123456', master_log_file='mysql-bin-5.000002' ,master_log_pos=906,master_post='20000';
mysql> start slave; ##开启从库 (stop slave:关闭从库)
mysql> show slave status; ###Slave_IO_Running,Slave_SQL_Running 都为Yes的时候表示配置成功