linux mysql1146_MySQL主从同步及错误1146解决办法

linux mysql1146_MySQL主从同步及错误1146解决办法在实际使用MySQL的时候我们有时要增加一些新的库进行主从同步,所以可以通过修改my.cnf文件以及在主库上添加用户连接权限就可以实现主从同步,而在做主从同步的时候碰到几个问题这里就和大家说一下,至于如何构建主从同步这里就不再多说了,相信在网上能找到一大堆,这里就稍稍提几个关键点,在从库下的my.cnf添加如下几行:server-id=2#一般主库是1,从库可以除1以外的数字log-bin=m…

大家好,又见面了,我是你们的朋友全栈君。

在实际使用MySQL的时候我们有时要增加一些新的库进行主从同步,所以可以通过修改my.cnf文件以及在主库上添加用户连接权限就可以实现主从同步,而在做主从同步的时候碰到几个问题这里就和大家说一下,至于如何构建主从同步这里就不再多说了,相信在网上能找到一大堆,这里就稍稍提几个关键点,在从库下的my.cnf添加如下几行:

server-id = 2#一般主库是1,从库可以除1以外的数字

log-bin=mysql-bin#从库是读取主库logbin文件的,这行一定要加,不然会报错

report-host=192.168.168.253#主库的ip

relay-log = mysql-relay-bin

replicate-wild-do-table=database.%#需要同步主库里的某一个库,多个库可自行添加

在主库里添加用户使从库可连接,这里需要注意的是给权限时密码必须是密文,不然会报错误1372,我们可以用

mysql>select password(‘password’);#生成41位的十六进制数

mysql> GRANT REPLICATION SLAVE ON *.* TO ‘test_backup’@’192.168.168.254’ IDENTIFIED BY PASSWORD ‘*2470C0C06DEE42FD1618BB99005ADCA2EC9D1E19’;#要这样给权限

在主库权限给好后从库里去修改连接主库的状态值

change master to master_host=’192.168.168.253′,master_user=’test_backup’,master_password=’test_backup’,master_log_file=’mysql-bin.XXXXXX’,master_log_pos=XXX;

slave start;

然后show slave status\G看下面2项目是yes就行了

Slave_IO_Running: Yes

Slave_SQL_Running: Yes

按理说主从同步到这里应该是结束了,但是,我在主库里查询以一下语句,再来看从库的状态时就会报错1146,刚刚开始还以为是库表文件损坏但是都没有用,于是上网去找很多方法都没有用到后来想到报错是从库里找不到相应的表,与是就看下从库里果然没有任何库,因为主从同步只会同步并不会新建库,于是就到主库里导出要同步的库

mysqldump -uroot -p database > database.sql

在从库里建同名的库并导入,注意要和主库里用同样的字符集

mysql> CREATE DATABASE `DATABASE` CHARACTER SET utf8 COLLATE utf8_general_ci

mysql>source database.sql#如果不在database.sql路径进入mysql要写database.sql的路径

mysql>slave stop;

再次调整最新的状态值再slave start,这样主从同步就做好了。

0b1331709591d260c1c78e86d0c51c18.png

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/135663.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • java的学生信息管理系统_学生管理系统java

    java的学生信息管理系统_学生管理系统java导读正文本文实例为大家分享了java学生信息管理系统的具体代码,实现学生信息:增加int[]a=newint[9]、删除、查找、更改,供大家参考,具体内容如下/*学生信息管理系统,实现学生信息:*增加int[]a=newint[9]*删除*查找*更改*/importjava.util.Scanner;//导入java输入流importjava.lang.*;importja…

  • 实例分割–Mask RCNN详解(ROI Align / Loss Fun)

    实例分割–Mask RCNN详解(ROI Align / Loss Fun)1总结架构与主要思想未完待续。。。

  • vb.net 学习「建议收藏」

    vb.net 学习「建议收藏」一、vb.net是什么vb:即VisualBasic.net:是一个开发平台,在这个平台上可以开发多种语言。bcl:我的理解就是类的定义clr:我的理解就是类的使用。作用:(相当于java虚拟机,内存管理,垃圾清理)注:因为百度上说的都太宏观了,目前还是刚刚接触这个,是从名字上去理解,有其他见解可以留言或后面我有不同感悟再改二、vb.net有什么用目前我接触到:控制台程序 窗体程序 webservice三、怎么用说一个可能很多人忽略或只有我忽略了一下吧.

  • 超百个免费api接口,分享给你「建议收藏」

    超百个免费api接口,分享给你「建议收藏」API(应用程序编程接口)API(ApplicationProgrammingInterface,应用程序接口)是一些预先定义的函数,或指软件系统不…

  • 编译安装httpd apache服务器

    编译安装httpd apache服务器

  • c++实现stack_c语言输出栈中所有元素

    c++实现stack_c语言输出栈中所有元素栈是数据结构中较为简单的结构体,是一种操作收到限制的线性表.但简单不代表没用,毕竟数组还贼简单呢.谁敢说数组没用?栈栈的理论栈是一个先进后出的结构,类似于堆盘子,先放到地上的盘子最后被取走(默认只能取走一个盘子)栈其实就是操作受限的线性表,只有一个口,每一次操作时,这个口可以当出口也可以当入口.例如:水桶,注入水时,水桶的头当做入口,倒水时,水桶的头当做出口栈的图解.在图解之前,先举一个例…

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号