美文网首页
《MySQL自学笔记》之主从复制

《MySQL自学笔记》之主从复制

作者: 夏天嘚花花 | 来源:发表于2019-01-20 17:20 被阅读0次
安全卸载linux上的mysql
  1. 执行 yum remove mysql mysql-server mysql-libs compat-mysql51
  2. rm -rf /var/lib/mysql #很多自带的mysql都安装到这个目录,执行下删除将其删除了
  3. rm -rf /etc/my.cnf #删除配置文件
  4. rpm -qa|grep mysql #查看是否有包含mysql的npm如果有的话 执行 rpm -e xxx将其删除
  5. 执行 whereis mysql 查看下哪里有包含mysql的文件夹 有的话使用 rm -rf xxx将其删除
  6. rm –rf /usr/my.cnf rm -rf /root/.mysql_sercret
安装mysql

按照网上的教程安装会有几个问题
1.按照上面的网址安装后,发现启动的时候报了

image.png
这个问题是由于/etc/my.cnf的权限是root的所有权限,mysql认为权限太大不让使用,如果我们把权限放小又报了了其他权限问题,所以我们不使用这个位置的配置文件,将其 rm -rf /etc/my.cnf。 这样他就会使用安装目录下的my.cnf来启动
网上找的比较干净的my.cnf的初始配置文件
[client]    
port=3306
socket=/usr/local/mysql/mysql.sock

[mysqld]
port=3306 
socket=/usr/local/mysql/mysql.sock
## 设置mysql的安装目录
basedir=/usr/local/mysql
## 设置mysql数据库的数据的存放目录
datadir=/usr/local/mysql/data
## 允许最大连接数
max_connections=200
## 服务端使用的字符集默认为8比特编码的latin1字符集
character-set-server=utf8
## 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
lower_case_table_name=1
max_allowed_packet=16M

2.启动客户端报错


image.png

目前不知道什么原因,只知道/temp/mysql.sock没有这个文件,但是我配置文件都是指向/usr/local/mysql/mysql.sock的。所以先用软链接链接过去。 ln -s /usr/local/mysql/mysql.sock /tmp/mysql.sock


image.png
mysql主从复制

主机 : 192.168.199.128
丛机 : 192.168.199.129

主服务器配置

1.主机的my.cnf添加如下配置并重启mysql服务

#主从复制
server-id = 128
#复制过滤:需要备份的数据库,输出 binlog
#binlog-do-db=mbank
#复制过滤:不需要备份的数据库,不输出(mysql 库一般不同步)
#binlog-ignore-db=mysql
# 开启二进制日志功能,可以随便取,最好有含义
log-bin=mysql-bin-128

2.在主机上创建一个给丛机连接的用户,并授予权限

CREATE USER 'xuzy'@'192.168.199.129' IDENTIFIED BY '123456';#创建用户

GRANT REPLICATION SLAVE ON *.* TO [<u>'xuzy'@'192.168.199.129' ;#分配权限</u>](mailto:'xuzy'@'192.168.199.129';#分配权限)

flush privileges;   #刷新权限

3.查看master状态

image.png
记录下File和Position的值。因为mysql主从是通过日志来做的,这两个等下要用到
从服务器配置

1.在从服务器的my.cnf上添加如下配置并重启服务

server-id=129

2.进入客户端 mysql -uroot -p123456,并执行如下命令

CHANGE MASTER TO MASTER_HOST='192.168.199.128', MASTER_USER='xuzy',  MASTER_PASSWORD='123456',MASTER_LOG_FILE='mysql-bin-128.000002',MASTER_LOG_POS=12984; 

3.启动slave同步进程 : start slave;
4.查看slave状态 : show slave status\G; 都是yes表示可以了


image.png

相关文章

网友评论

      本文标题:《MySQL自学笔记》之主从复制

      本文链接:https://www.haomeiwen.com/subject/fqaxjqtx.html