我的操作系统是ubuntu 16.04 lts,我正在部署sakila数据库来学习mysql,并完成了以下工作:
从下载了文件“sakila-db.tar.gz”https://downloads.mysql.com/docs/ 到目录“/tmp”没有问题 $ cd /tmp
$gzip-cd sakila-db.tar.gz | tar xvf-文件sakila-data.sql、sakila-schema.sql和sakila.mwb被提取到目录“sakila db”
$ cd sakila-db $ mysql -u root -p < sakila-schema.sql
(命令执行成功) $ mysql -u root -p
(向用户授予sakila数据库的权限)
mysql>在sakila上授予create,drop,alter,insert,update,select,delete,index,create view,create routine,alter routine,execute,trigger,index.*到'jump'@'localhost';
(命令执行成功) mysql> GRANT SUPER, RELOAD, FILE ON *.* TO 'ted'@'localhost';
(将这些全局命令授予用户ted-命令执行正常)
mysql>退出
试图用来自的数据填充sakila表 sakila-data.sql
$mysql-u ted-p<sakila-data.sql
输入密码:
ERROR 1044 (42000) at line 46412: Access denied for user 'ted'@'localhost' to database 'sakila'
这是我的问题,有人能帮我解决吗?
1条答案
按热度按时间kognpnkq1#
我通过发出以下命令找到了解决问题的方法:连接到mysql:$mysql-u root-p;对数据库发出全局授予:授予上的所有特权。“ted”@“localhost”和grant选项;然后退出mysql;发出命令:$mysql-u ted-p mysql>use mysql;但是。。。错误1044(42000):拒绝用户“”@“localhost”访问数据库“mysql”。