[转帖]ERROR 1064 (42000)_MySQL, Oracle及数据库讨论区_Weblogic技术|Tuxedo技术|中间件技术|Oracle论坛|JAVA论坛|Linux/Unix技术|hadoop论坛_联动北方技术论坛  
网站首页 | 关于我们 | 服务中心 | 经验交流 | 公司荣誉 | 成功案例 | 合作伙伴 | 联系我们 |
联动北方-国内领先的云技术服务提供商
»  游客             当前位置:  论坛首页 »  自由讨论区 »  MySQL, Oracle及数据库讨论区 »
总帖数
1
每页帖数
101/1页1
返回列表
0
发起投票  发起投票 发新帖子
查看: 2418 | 回复: 0   主题: [转帖]ERROR 1064 (42000)        下一篇 
    本主题由 Administrator 于 2014-11-11 22:14:14 移动
wendusu721
注册用户
等级:新兵
经验:61
发帖:7
精华:0
注册:2014-3-11
状态:离线
发送短消息息给wendusu721 加好友    发送短消息息给wendusu721 发消息
发表于: IP:您无权察看 2014-11-10 15:23:18 | [全部帖] [楼主帖] 楼主

那MySql 建立新用户,怎么老是出错呢?

mysql> CREATE USER 'monty'@'MySQLServer' IDENTIFIED BY 'some_pass';
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 'USER 'monty'@'MySQLServer' IDENTIFIED BY 'some_pass'' at line 1
mysql> grant all privileges on shangcheng.* to shangcheng@localhost identified by '123456';
Query OK, 0 rows affected (0.04 sec)
mysql> show users;
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 'users' at line 1
mysql>


蓝色的shangcheng应该是用户名。

前面那个红色的shangcheng 是数据库名。

上述命令会创建新的用户,但是不会创建新的数据库。

mysql> grant all privileges on shangcheng.* to peter@localhost identified by 'abc123';
Query OK, 0 rows affected (0.00 sec)
mysql> select user, host, password from mysql.user;
+------------+-----------+------------------+
| user | host | password |
+------------+-----------+------------------+
| root | % | 67457e226a1a15bd |
| root | localhost | |
| shangcheng | localhost | 565491d704013245 |
| test1 | % | 7cd2b5942be28759 |
| test2 | localhost | 7cd2b5942be28759 |
| peter | localhost | 4b5698aa4603595b |
+------------+-----------+------------------+
6 rows in set (0.00 sec)
mysql>
mysql> show databases;
+----------+
| Database |
+----------+
| abccs |
| mysql |
| test |
+----------+
3 rows in set (0.00 sec)
mysql>
******************************************


我们已经建立了一个数据库并且输入了一些数据。现在必须新建一个用户帐号以便可以访问数据库,并且用GRANT命令赋予此用户特权:

mysql> GRANT usage
-> ON example.*
-> TO webuser@localhost;
Query OK, 0 rows affected (0.15 sec)


此后就创建了一个新用户叫:webuser,这个用户只能从localhost连接到数据库并可以连接到example 数据库。下一步,我们必须指定webuser这个用户可以执行哪些操作:

mysql> GRANT select, insert, delete
-> ON example.*
-> TO webuser@localhost;
Query OK, 0 rows affected (0.00 sec)


这样创建的用户只能从localhost访问数据库? 那就是说不能通过web页面写MySql?

我理解错了,这个peter是数据库用户,他的确只需要从local登录数据库,并进行常规的增删改的动作。

# mysql --user=peter --password=abc123
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 7 to server version: 4.1.22
Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
mysql> select user();
+-----------------+
| user() |
+-----------------+
| peter@localhost |
+-----------------+
1 row in set (0.00 sec)
mysql>


--转自 北京联动北方科技有限公司


该贴由system转至本版2014-11-11 22:14:14



赞(0)    操作        顶端 
总帖数
1
每页帖数
101/1页1
返回列表
发新帖子
请输入验证码: 点击刷新验证码
您需要登录后才可以回帖 登录 | 注册
技术讨论