更新:已编辑将实际数据添加到数据库中,但仍然是同样的问题。
我正在使用普通安装的 Debian (6.0.1)、最新版本的 MySQL,并尝试设置 MySQL 数据库复制。
这是我到目前为止所做的:
$ apt-get upgrade
$ apt-get install mysql-client mysql-server
$ vi /etc/mysql/my.cnf
# Comment out bind-addressb
# bind-address = 127.0.0.1
# Add these lines
log-bin = /var/log/mysql/mysql-bin.log
binlog-do-db=exampledb
server-id=1
$ /etc/init.d/mysql restart
$ mysql -u root -p
> CREATE DATABASE exampledb;
> USE exampledb;
> CREATE TABLE berries (name VARCHAR(100));
> INSERT INTO berries VALUES ('cherry');
> INSERT INTO berries VALUES ('bilberry');
> exit;
$ /etc/init.d/mysql restart
$ mysql -u root -p
> GRANT REPLICATION SLAVE ON *.* TO 'slave_user'@'%' IDENTIFIED BY '<some_password>';
> FLUSH PRIVILEGES;
> USE exampledb;
> INSERT INTO berries VALUES ('blackberry');
> FLUSH TABLES WITH READ LOCK;
> SHOW MASTER STATUS;
此时,显然我应该看到日志文件的一些细节,但我看到的却是:
Empty set (0.00 sec)
有什么想法吗? /var/log/mysql.err
和 /var/log/mysql.log
都是空的,即使在重新启动后也是如此。
谢谢!
最佳答案
最后想通了。
线索就在MySQL manual ,它说:
In a different session on the master, use the SHOW MASTER STATUS statement
我使用的是同一个 session :)
关于mysql - 设置 MySQL 复制?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5899384/