首页 > 数据库 >mysql 主备模式搭建过程

mysql 主备模式搭建过程

时间:2022-09-06 17:22:41浏览次数:70  
标签:do replicate db binlog MASTER mysql 主备 搭建

MySQL主备搭建
1.主库配置
以下所有操作均在主服务器上执行
1)创建用户并授权

create user slave identified with mysql_native_password by '123456'
mysql>GRANT REPLICATION SLAVE ON *.* to '用户名'@'从数据库IP地址' identified by '密码';
mysql>FLUSH PRIVILEGES;

2)修改主库配置文件
开启binlog,并设置server-id,每次修改配置文件后都要重启mysql服务才会生效

vim /etc/my.cnf
#同步的日志路径及文件名,一定注意这个目录要是mysql有权限写入的
log-bin=/var/lib/mysql/binlog 
#master端的id号,不唯一即可
server-id=1 
#指定同步的数据库,如果不写,默认是同步所有数据库
binlog-do-db = 数据库
#指定不同步的数据库  
binlog-ignore-db=mysql
#binlog日志的保留时间
expire_logs_days=7
#指定binlog日志的格式
binlog_format=ROW 

改配置文件后,重启服务:
service mysqld restart
./mysql.server start
3)查看主服务器当前二进制日志名和偏移量

mysql> show master status;

+---------------+----------+--------------+------------------+
| File          | Position | Binlog_Do_DB | Binlog_Ignore_DB |
+---------------+----------+--------------+------------------+
| binlog.000001 |     1304 | 数据库(空为所有)        |                  |
+---------------+----------+--------------+------------------+
1 row in set (0.00 sec)

到此主服务器已经配置好:
2.从库配置
以下所有操作均在从服务器上执行
1)修改从库配置文件

vim /etc/my.cnf
#master端的id号,不唯一即可
server-id=99
#同步的日志路径及文件名,一定注意这个目录要是mysql有权限写入的
log-bin=mysql-bin
#复制哪个库可以不用填写
replicate-do-db=webkit
replicate-do-db=dgp
replicate-do-db=dses_etldb
replicate-do-db=dses_metadb
replicate-do-db=dcf
replicate-do-db=etl
replicate-do-db=metadata
#不复制哪个库
replicate-ignore-db=mysql,information_schema,performance_schema
#这两个是启用relaylog的自动修复功能,避免由于网络之类的外因造成日志损坏,主从停止,保证数据写入的一致性
master_info_repository=table
relay_log_info_repository=table

改配置文件后,重启服务:
service mysqld restart
2)sql中执行

mysql> CHANGE MASTER TO MASTER_HOST='主库的ip',
MASTER_PORT=3306,
MASTER_USER='用户名',
MASTER_PASSWORD='密码',
MASTER_LOG_FILE='binlog.000005',
MASTER_LOG_POS=1240; 

注:MASTER_LOG_FILE和MASTER_LOG_POS的值为master节点中执行show master status查询到的信息

2)启动slave进程

mysql> start slave;
Query OK, 0 rows affected (0.04 sec)

3)查看slave状态

mysql> show slave status\G;(后面的分号不去的会报错,但无影响)

如果下面两项值为YES,则表示配置正确:
Slave_IO_Running: Yes
Slave_SQL_Running: Yes

标签:do,replicate,db,binlog,MASTER,mysql,主备,搭建
From: https://www.cnblogs.com/dhcc/p/16662540.html

相关文章

  • MySQL
    数据库基础知识数据库 :数据库(DataBase简称DB)就是信息的集合或者说数据库是由数据库管理系统管理的数据的集合。数据库管理系统 :数据库管理系统(DatabaseManag......
  • mysql 日志文件配置
     https://blog.csdn.net/a510196774/article/details/101995194 [mysqld]datadir=/var/lib/mysqlsocket=/var/lib/mysql/mysql.socklog-error=/var/log/mysql/mysqld......
  • mysql查询排序
    1.排序规则根据select语句中的order by 列名进行排序。ASC(ascend):升序,默认可以不写DESC(descend):降序ORDERBY字句在SELECT语句的结尾备注:数据库......
  • Mysql数据库增删改查
    数据库显示数据库showdatabases;显示数据表showtables;选择数据库usemysql;创建数据库createdatabasehaige;删除数据库dropdatabasehaige;刷新权限flushprivilege......
  • 直播平台搭建源码,把bitmap插入到相册和相机图库
    直播平台搭建源码,把bitmap插入到相册和相机图库插入到相册:       Filefile=newFile(filePath);      try{        Medi......
  • mysql8 数据库迁移部署的一个常见文件备忘。。
      1、sql_mode=only_full_group_bysql_mode=only_full_group_by Causedby:java.sql.SQLSyntaxErrorException:Expression#1ofSELECTlistisnotinGROU......
  • mysql 主从备份原理
    mysql主从备份原理1.1用途及条件mysql主从复制用途实时灾备,用于故障切换读写分离,提供查询服务备份,避免影响业务主从部署必要条件:主库开启binlog日志(设置log-bi......
  • centos 编译安装mysql 报错:make[2]: *** [storage/perfschema/unittest/pfs_connect_a
    错误:/opt/install-files/Package/mysql-5.7.38/sql/rpl_binlog_sender.cc:828:undefinedreferenceto`user_var_entry::val_int(char*)const'collect2:error:ld......
  • MySQL笔记(更新中)
    注意点:如果字段或者数据库或者表名和关键字重复可以使用``来规避关键字1、查看所有数据库>showdatabases;2、选择数据库>usedatabasedbName;3、创建数据库>......
  • StoneDB for MySQL 5.7 版本发布
    StoneDB_5.7_v1.0.0的发行日志支持MySQL5.7功能添加或改变编译相关改动配置相关改动文档变更BUG修复欢迎大家关注我们的Github:https://github.com/stoneatom/st......