MySQL中的主从复制
我在设置主从单向复制系统的过程中遇到了一个问题。当我改变主机上的设置时,它看起来很好。但是在我改变了slave的设置之后。当我尝试进入主服务器上的MySQL时,会显示以下错误消息MySQL中的主从复制,mysql,replication,master-slave,Mysql,Replication,Master Slave,我在设置主从单向复制系统的过程中遇到了一个问题。当我改变主机上的设置时,它看起来很好。但是在我改变了slave的设置之后。当我尝试进入主服务器上的MySQL时,会显示以下错误消息 ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2) 我想问题可能是因为我没有更改/etc/mysql/my.cnf上服务器的绑定地址。因此,我再次尝试并更改两台
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)
我想问题可能是因为我没有更改/etc/mysql/my.cnf
上服务器的绑定地址。因此,我再次尝试并更改两台服务器的绑定地址。主服务器和从服务器似乎连接了一段时间,因为从服务器复制了主服务器的功能。但是过了一会儿,错误消息error 2002(HY000):无法通过套接字连接到本地MySQL服务器“/var/run/mysqld/mysqld.sock'(2)
再次显示,首先在主服务器上,然后在从服务器上。我试图通过重新启动服务器来解决此问题,但失败了
以下是我迄今为止所做的工作:
arp -a //find ip of master and slave server
进入[mysqld]:
nano /etc/mysql/my.cnf
加:
在mysql中
for [master]
create user 'repl'@'%' identified by 'slavepassword';
grant replication slave on *.* to 'repl'@'%';
for [slave]
change master to
master_host='master server's ip',
master_user='repl',
master_password='slavepassword',
master_log_file='mysql-bin.000001', // get from show master status
master_log_pos=1358; // get from show master status
start slave;
show slave status\G;
show processlist;
在过程中更改主服务器的设置后,我确实重新启动了主服务器,但由于出现错误消息,重新启动失败 为什么要更改绑定地址?请尝试0.0.0.0或*进行测试。您还可以尝试通过mysql客户端从客户端访问主机,如$mysql-hip-u repl-p slavepassword当我尝试使用“mysql-hip-u repl-p slavepassword”进入mysql时,它会提示“输入密码:”以要求远程机器的根密码,而我没有根密码。我只有远程计算机的一个客户端的密码。而且,0.0.0.0不起作用。我猜可能有什么东西阻止了连接,比如防火墙?很抱歉,在-p和$mysql-h IP-u repl-pslavepassword这样的密码之间没有空格。为什么要更改绑定地址?请尝试0.0.0.0或*进行测试。您还可以尝试通过mysql客户端从客户端访问主机,如$mysql-hip-u repl-p slavepassword当我尝试使用“mysql-hip-u repl-p slavepassword”进入mysql时,它会提示“输入密码:”以要求远程机器的根密码,而我没有根密码。我只有远程计算机的一个客户端的密码。而且,0.0.0.0不起作用。我猜可能有什么东西阻止了连接,比如防火墙?对不起,在-p和$mysql-h IP-u repl-pslavepassword这样的密码之间没有空格
for [master]
create user 'repl'@'%' identified by 'slavepassword';
grant replication slave on *.* to 'repl'@'%';
for [slave]
change master to
master_host='master server's ip',
master_user='repl',
master_password='slavepassword',
master_log_file='mysql-bin.000001', // get from show master status
master_log_pos=1358; // get from show master status
start slave;
show slave status\G;
show processlist;