在执行MySQL复制的时:为主服务器创建用户以便从服务器连接,出现该错误:

GRANT REPLICATION SLAVE ON a_database.* to 'repl1'@'192.168.1.88' IDENTIFIED BY 'slavepass';

之所以指定数据库我是希望能只复制这个数据库而忽略其他(已创建的或今后会创建的)数据库。

也可以在配置文件(/etc/my.cnf)中(或启动时指定该参数)来指定:

--replicate-do-db=数据库名

注意:从服务器限制默认数据库的语句的复制。要指定多个数据库,应多次使用该选项,每个数据库使用一次。

原因:是该权限(REPLICATION SLAVE)是一个全局权限(Global privilege),不能单独指定给数据库级别(database level)。