我正在关注新的波士顿mysql教程,一开始他就在写
SHOW DATABASES
。就我而言,我收到以下错误
“#1227 - 访问被拒绝;您需要(至少一项)SHOW DATABASES 权限才能执行此操作”。
我对 phpmyadmin 很陌生,我已经在谷歌上搜索了如何授予权限,但我很不幸
您需要将该权限授予用户,即
GRANT SHOW DATABASES ON *.* TO $username_here
可以在此处找到相关文档
http://dev.mysql.com/doc/refman/5.7/en/grant.html
这里也有人对 PHPMYADMIN 有类似的问题。
根据您的用户名,您也可以从控制台使用它
GRANT SUPER ON *.* TO user@'localhost' IDENTIFIED BY 'password_asljk8902314';
flush privileges;
请确保您的用户名正确。
就我而言,这是我用来导入数据库的语法:
mysql -u jaimemontoya -pMyPasswordHere -h [name_here].ondigitalocean.com -P [port_number_here] -D cloned_db < cloned_db.sql
这是错误:
mysql: [Warning] Using a password on the command line interface can be insecure.
ERROR 1227 (42000) at line 18: Access denied; you need (at least one of) the SUPER, SYSTEM_VARIABLES_ADMIN or SESSION_VARIABLES_ADMIN privilege(s) for this operation
问题的根本原因是在我的
cloned_db.sql
文件中,我有以下几行:
SET @MYSQLDUMP_TEMP_LOG_BIN = @@SESSION.SQL_LOG_BIN;
SET @@SESSION.SQL_LOG_BIN= 0;
SET @@GLOBAL.GTID_PURGED=/*!80000 '+'*/ 'aef25hke-65h7-35jk-s54k-4567g3f6437e:3-69538';
SET @@SESSION.SQL_LOG_BIN = @MYSQLDUMP_TEMP_LOG_BIN;
我注释掉了这些行并再次执行
mysql -u jaimemontoya -pMyPasswordHere -h [name_here].ondigitalocean.com -P [port_number_here] -D cloned_db < cloned_db.sql
。数据库导入成功。