作者antontw (习惯)
看板PHP
标题Re: [请益] 连接mysql建立帐号失败
时间Thu Jan 18 16:56:59 2007
※ 引述《justagame (Jag)》之铭言:
: 在成功连接mysql後
: $link=mysql_pconnect("localhost","root","xxxxxx");
: 我试着建立db跟user
: 由於似乎没有create user的函数所以使用query:
: 但下列两种方式都没有作用..
: 单纯建立:
: mysql_query("CREATE USER 'test'@'localhost' IDENTIFIED BY 'testpw';");
: 与GRANT:
: mysql_query("GRANT USAGE ON *.* TO 'testpw'@'localhost') IDENTIFIED BY 'testpw'
: WITH MAX_QUERIES_PER_HOUR 0 MAX_CONNECTIONS_PER_HOUR 0 MAX_UPDATES_PER_HOUR 0
: MAX_USER_CONNECTIONS 0 ;");
: 可以请教语法哪里有误吗<(_ _)>
: 感谢
呃.... 没有的东西可以试,但是不要自已创造,
去查一下比较实际: google keyword: mysql 新增使用者
http://www.adj.idv.tw/server/linux_mysql.htm
简单摘要一下:
<%
增加新的MySQL使用者:(方法一)
(1)开启mysql资料库
mysql mysql -uroot -p密码
(2)增加一个新帐号,并设定权限
insert into user values ('host','user',password('密码'),
'y','y','y','y','y','y','y','y','y','y','y','y','y','y');
说明:host->填入您要连线的主机名称(完整名称hostname+domainname),若位於本机则
填localhost。
user-->您要设定的帐号
密码-->您要设定的密码
之後14个y代表着14个不同的权限,依序为
1.Select_priv 2.Insert_priv 3.Update_priv 4.Delete_priv
5.Index_priv
6.Alter_priv 7.Create_priv 8.Drop_priv 9.Grant_priv
10.References_priv
11.Reload_priv 12.Shutdown_priv 13.Process_priv
14.File_priv
若您不开放权限,则在该项目下填n即可。
# 增加新的MySQL使用者:(方法二)(较安全)
GRANT 权限 ON 资料库(或资料表TABLE) TO user@host IDENTIFIED BY '密码';
权限设定建议:除了管理者外,其他user尽量避免设定全部权限全开。一般而言,只开
SELECT、INSERT、UPDATE三项权限;进阶的user则加开DELETE、CREAT、DROP、INDEX四项
权限;其余权限,能不开,则不开,以确保整个MySQL的安全性。
ex:
1. 新增帐号,并给予全部权限
GRANT ALL PRIVILEGES ON *.* TO user@host IDENTIFIED BY '密码';
说明:将全部权限都设给从host连线上来的user这个人,并给定密码为密码。
2. 新增帐号,并指定某资料库与特定权限给该帐号
GRANT SELECT,INSERT,UPDATE ON 资料库名.* TO user@host IDENTIFIED BY '密码';
%>
在 php 里面作,简单的说,还是用 phpmyadmin 最快。
不过一样是打开 mysql (db) 新增一笔记录到 user (table)
再 grant 权限。
--
GTalk 机器人: sodagreen.fans1 (at) gmail 点 com
可以查字码﹑天气﹑苏打绿的行事历﹑还有 stardict 的英﹑汉﹑义﹑日 四国字典哦~
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 202.132.72.186
1F:推 justagame:感谢<(_ _)> 01/18 17:27
2F:→ justagame:不过..query不是等同於对mysql下指令, 01/18 17:30
3F:→ justagame:那麽为什麽我的作法会没有反应呢._. 01/18 17:31
4F:→ justagame:应该说,我是copy phpmyadmin的指令列,结果失败 囧> 01/18 21:47