【问题标题】:mysql replication phpmyadmin windows versionmysql 复制 phpmyadmin windows 版本
【发布时间】:2013-10-15 13:40:03
【问题描述】:

首先让我说没有关于如何在 Windows 上执行此操作的 CLEAR 教程,我是一名程序员,多年来一直在使用 MySQL 和 PHP,并且在谈到 linux 时从未见过这么多不同的答案,对于 Windows 用户来说绝对没有。

无论如何,我已经工作了 2 周,试图自己解决这个问题,无论我尝试什么教程、方法或任何方法,我都在同一个地方。基本上我有两个 MySQL 服务器。一主一从(通过phpMyAdmin设置)

我的两台服务器都在线,它们可以互相看到并相互连接,但是在 phpMyAdmin 中的“从属状态”表下同步时,我经常收到错误说表不存在。但他们确实如此。现在我不确定我是否应该手动从我的主人那里完全导入数据库,然后它会更新它或其他什么(同样没有明确的 Windows 教程)。下面是我从 phpMyAdmin 复制的表格。

Slave_IO_State  Waiting for master to send event
Master_Host XX.XX.XX.XX
Master_User XXXXXXXX
Master_Port 3306
Connect_Retry   60
Master_Log_File mysql-bin.000012
Read_Master_Log_Pos 1221
Relay_Log_File  *servername*-relay-bin.000003
Relay_Log_Pos   253
Relay_Master_Log_File   mysql-bin.000001
Slave_IO_Running    Yes
Slave_SQL_Running   No
Replicate_Do_DB 
Replicate_Ignore_DB 
Replicate_Do_Table  
Replicate_Ignore_Table  
Replicate_Wild_Do_Table 
Replicate_Wild_Ignore_Table 
Last_Errno  1146
Last_Error  Error 'Table '*databasename*.*tablename*' doesn't exist' on query. Default database: '*databasename*'. Query: 'DELETE FROM *tablename* WHERE expires
Skip_Counter    0
Exec_Master_Log_Pos 107
Relay_Log_Space 211493
Until_Condition None
Until_Log_File  
Until_Log_Pos   0
Master_SSL_Allowed  No
Master_SSL_CA_File  
Master_SSL_CA_Path  
Master_SSL_Cert 
Master_SSL_Cipher   
Master_SSL_Key  
Seconds_Behind_Master (blank but would like this setup)

我还应该补充一点,这个据称缺少表的数据库在活动网站的主服务器上运行良好。

任何能帮助我指明正确方向的人都将不胜感激。

【问题讨论】:

  • @Pat 我已经尝试过您的建议,但是我还收到有关重复记录的其他错误,顺便感谢您的回答,我已经处理了超过 2 个几个星期了,绝对没有得到任何地方......这是我得到的错误:错误'Operation CREATE USER failed for 'replication'@'%'' on query。默认数据库:'mysql'。查询:'CREATE USER 'replication'@'%' IDENTIFIED BY '**********************'' 但是主服务器上没有名为“Replication”的用户...
  • 错误显示在哪里?在 Last_Error 中?或者您是否正在尝试创建该用户?如果您知道该用户不存在,您可以 DROP USER 然后再次创建它
  • @PatI 这是最后一个错误,但是清除错误并不能解决它,只是给出另一个错误,我昨天花了几个小时,清除错误,删除复制用户,并尝试重置奴隶,但同样的事情一直在发生。

标签: php mysql windows replication


【解决方案1】:

您希望对主数据库进行完整备份并将其加载到您的从属数据库上,或者在主数据库不工作时手动复制它们。当您在启动之前在从属服务器上运行 CHANGE MASTER 命令时,您希望指定在备份后创建的第一个二进制日志文件,如下所示:

CHANGE MASTER TO MASTER_HOST='xx.xx.xx.xx', MASTER_PORT=3306, MASTER_USER='user', MASTER_PASSWORD='*secret*', MASTER_LOG_FILE='mysql-bin.004388', MASTER_LOG_POS = 0

一旦slave没有错误,Seconds_Behind_Master会自动显示。

仅此而已。

【讨论】:

  • 这是我得到的错误:错误'操作 CREATE USER failed for 'replication'@'%'' on query。默认数据库:'mysql'。查询:'CREATE USER 'replication'@'%' IDENTIFIED BY '**********************'' 但是主服务器上没有名为“Replication”的用户...
  • 这里显示了一个类似的问题,删除用户并刷新 privs 可以纠正错误:stackoverflow.com/questions/5555328/…这是否在您复制备份并启动从属服务器后直接发生?
猜你喜欢
  • 2018-02-23
  • 2015-02-26
  • 1970-01-01
  • 2019-07-08
  • 2012-07-05
  • 2021-12-27
  • 2017-12-29
  • 1970-01-01
  • 2011-04-19
相关资源
最近更新 更多