如何创建一个MySQL数据库
问题描述:
我试着用下面的命令来创建数据库:如何创建一个MySQL数据库
mysql> GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,ALTER,INDEX,DROP,
-> CREATE TEMPORARY TABLES,SHOW VIEW,CREATE ROUTINE,ALTER ROUTINE,
-> EXECUTE,CREATE VIEW,EVENT,TRIGGER
-> ON {projekti_db}.*
-> TO '{asiakas}'@'localhost';
,并得到了以下错误消息
ERROR 1064 (42000): You have an error in your SQL syntax;
check the manual that corresponds to your MySQL server version
for the right syntax to use near '{projekti_db}.*
TO '{asiakas}'@'localhost'' at line 4
我的MySQL 5.1.37。我究竟做错了什么?
答
#
# First create the Database
#
CREATE DATABASE projekti_db;
#
# Then Create the User that will access that database
#
GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,ALTER,INDEX,DROP,
CREATE TEMPORARY TABLES,SHOW VIEW,CREATE ROUTINE,ALTER ROUTINE,
EXECUTE,CREATE VIEW,EVENT,TRIGGER
ON projekti_db.*
TO 'asiakas'@'localhost';
#
# Now verify that the user asiaskas can access the projekti_db only from localhost
#
SHOW GRANTS FOR 'asiakas'@'localhost';
试试看!
答
您正尝试将角色分配给特定数据库上的用户。要创建数据库,请使用
CREATE DATABASE NAME;
答
该语法不会创建数据库,它会将db特权授予用户。
要创建一个数据库,你会使用:
CREATE DATABASE projekti_db;
好的,但查询后发生同样的错误创建数据库projekti_db; – Jaakko 2011-02-10 21:34:01