我在命令行级别的mysql上相当新。不幸的是,我已经设置的任务意味着我必须使用命令行。我通过PuTTY访问学校服务器。登录没有问题他们输入mysql -p,登录正常,但是当我去创建数据库时,我得到了1044错误。我也试过root但也没有运气。
login as: 10081552
Using keyboard-interactive authentication.
Password:
Last login: Sat Dec 7 16:04:24 GMT 2013 from 90.218.202.89 on ssh
Last login: Sat Dec 7 16:04:29 2013 from 90.218.202.89
10081552@sots ~ $ mysql -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 8636
Server version: 5.0.90-log Gentoo Linux mysql-5.0.90-r2
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql> create database hello;
ERROR 1044 (42000): Access denied for user '10081552'@'localhost' to database 'hello'
mysql>
我检查了特权,看起来很好(我认为)
mysql> show grants;
| Grants for 10081552@localhost
GRANT USAGE ON *.* TO '10081552'@'localhost' IDENTIFIED BY PASSWORD '*removed the hash' |
| GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, REFERENCES, INDEX, ALTER, LOCK TABLES ON `10081552`.* TO '10081552'@'localhost' |
2 rows in set (0.00 sec)
mysql>
所以我确信我做错了但是有人可以告诉我为什么我无法创造任何东西。正如我早期所说,我是新手的命令行,但不是一般的mysql或数据库。
答案 0 :(得分:2)
我检查了权限,看起来很好
对于您要执行的操作,权限不正常。您的用户GRANT
的{{1}}清楚地表明它在名为10081552@localhost
10081552
因此,您可以在该特定数据库中成功创建表格,例如
GRANT ... ON `10081552`.* TO '10081552'@'localhost'
^^^^^^^^^^^^
但是你不能创建新的数据库。
答案 1 :(得分:0)
要创建数据库,您必须使用root用户名和密码