我正在尝试设置 MySQL 复制从属服务器,但运行起来非常困难LOAD DATA FROM MASTER;
。是的,我知道它已被弃用,但我正在运行 MySQL 5.1,目前这不是我的问题。
由于某种原因 MySQL 不断告诉我CREATE
命令被拒绝,但 SHOW GRANTS 检查显示情况并非如此。看一下这个:
mysql> SHOW GRANTS;
+--------------------------------------------------------------------------------------------------------------------+
| Grants for replicator@% |
+--------------------------------------------------------------------------------------------------------------------+
| GRANT ALL PRIVILEGES ON *.* TO 'replicator'@'%' IDENTIFIED BY PASSWORD '*ABCDEFABCDEFABCDEFABCDEFBLAHBLAHBLAHBLAH' |
+--------------------------------------------------------------------------------------------------------------------+
1 row in set (0.00 sec)
mysql> LOAD DATA FROM MASTER;
ERROR 1142 (42000): CREATE command denied to user 'replicator'@'localhost' for table 'aggregate'
mysql>
我觉得奇怪的是,当打电话时LOAD DATA FROM MASTER
,它认为我是'replicator'@'localhost'
, yet SHOW GRANTS
says 'replicator'@'%'
。为了安全起见,我给予了相同的权限'replicator'@'localhost'
以及。
mysql> SHOW GRANTS FOR 'replicator'@'localhost';
+----------------------------------------------------------------------------------------------------------------------------+
| Grants for replicator@localhost |
+----------------------------------------------------------------------------------------------------------------------------+
| GRANT ALL PRIVILEGES ON *.* TO 'replicator'@'localhost' IDENTIFIED BY PASSWORD '*ABCDEFABCDEFABCDEFABCDEFBLAHBLAHBLAHBLAH' |
+----------------------------------------------------------------------------------------------------------------------------+
1 row in set (0.00 sec)
那么,对于为什么这一切都搞砸了有什么想法吗?是的,我做到了FLUSH PRIVILEGES
也有很多次。
预先感谢您提供的任何建议。
对于未来的搜索者,我发现在使用 MySQL Workbench 和 phpMyAdmin 的组合时会遇到此错误:如果您从表列表中“复制 SQL”,它会将模式名称添加到 create 语句中的表名称上(以及在外键命令可能是其中的一部分)。
小心地删除架构名称为我解决了这个问题。
例如:
CREATE TABLE IF NOT EXISTS `schema`.`table1` (
...blah blah blah...
CONSTRAINT `fk_user_id`
FOREIGN KEY (`user_id` )
REFERENCES `schema`.`table1` (`id` )
...blah blah blah...
应改为:
CREATE TABLE IF NOT EXISTS `table1` (
...blah blah blah...
CONSTRAINT `fk_user_id`
FOREIGN KEY (`user_id` )
REFERENCES `table1` (`id` )
...blah blah blah...
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)