Я пытаюсь настроить ведомость репликации MySQL, и мне очень сложно работать LOAD DATA FROM MASTER;
. Да, я знаю, что он устарел, но я запускаю MySQL 5.1, и это не моя проблема на данный момент.
По какой-то причине MySQL продолжает сообщать мне, что команда CREATE
отрицается, но проверка SHOW GRANTS говорит об обратном. Проверьте это:
mysql> SHOW GRANTS;
+--------------------------------------------------------------------------------------------------------------------+
| Grants for [email protected]% |
+--------------------------------------------------------------------------------------------------------------------+
| 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'
, но SHOW GRANTS
говорит 'replicator'@'%'
. Чтобы быть в безопасности, я также отдал те же привилегии 'replicator'@'localhost'
.
mysql> SHOW GRANTS FOR 'replicator'@'localhost';
+----------------------------------------------------------------------------------------------------------------------------+
| Grants for [email protected] |
+----------------------------------------------------------------------------------------------------------------------------+
| GRANT ALL PRIVILEGES ON *.* TO 'replicator'@'localhost' IDENTIFIED BY PASSWORD '*ABCDEFABCDEFABCDEFABCDEFBLAHBLAHBLAHBLAH' |
+----------------------------------------------------------------------------------------------------------------------------+
1 row in set (0.00 sec)
Итак, какие-то мысли о том, почему все это испортилось? Да, я сделал FLUSH PRIVILEGES
много раз.
Заранее благодарим за любой совет, который вы можете дать.