首頁 > php教程 > php手册 > php为什么选mysql作为数据库? Mysql 创建用户方法

php为什么选mysql作为数据库? Mysql 创建用户方法

WBOY
發布: 2016-06-13 12:31:04
原創
1019 人瀏覽過

1、php为什么选mysql作为数据库? 
2、Mysql数据库创建用户 
本文主要写mysql创建用户的语句的区别,转自isher的blogspot,由于在写入时想到了为什么不换用其他数据库的时候,搜索了一下google为什么php会选择mysql作数据库,没有发现相关报道,边决定找到起因,同时此问题由我个人总觉得出,不代表广大php老鸟群们的意见,如有不周请指出 
php为什么选mysql做为数据库?  

mysql是最早的开源数据库(基于GPL,GPL2开源协议开发,享有共享原则,现有一部分已规划到商业用途),虽然是免费的,但从性能和稳定性相比丝 毫不逊色于其他商业数据库,而php做为最类似于C语言的程序,门槛较低,且做为免费的模块发布不依赖于任何商业服务器,扩展性好,在internet上 存在重多的开源类库提供php开发者使用,从而php开发者便以同样基于GPL公约开发的Mysql数据库做为低成本起步搭档  

2、Mysql添加用户  
个人教训,在添加Mysql帐号的时候,一定要主义用户名和主机(local和%)均要被引号引起,否则命令即错  
命令方式的.注意每行后边都跟个 ; 表示一个命令语句结束.  

格式:grant select on 数据库.* to “用户名”@“登录主机” identified by "密码";  

例1、增加一个用户test1密码为abc,让他可以在任何主机上登录,并对所有数据库有查询、插入、修改、删除的权限。首先用以root用户连入MYSQL,然后键入以下命令:  

grant select,insert,update,delete on *.* to “test1”@"%" Identified by "abc";   

补充所有权限语句:  

由例1得: 将执行权限(select,insert,....)改为all privileges,即表示拥有所有权限,包括创建数据库权限,删除数据库,已经不局限于在一个数据库内操作  

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456';   

例1(非补充)中增加的用户是十分危险的,因为你的主机是%,%即代表任意位置的主机,而local即词义"本地",假如,某个人想知道test1的密码,那么他就可以在internet上的任何一台电脑上连接到你的mysql数据库并对你的数据可以为所欲为了,解决办法见例2。  

根据例1补充语句,此语句尽量不要在Mysql服务器上使用,如果你的服务器处于托管或远端地带,如果你需要远程管理Mysql服务器,而由不想通过超级终端登录到服务器上,那么你只好用此语句,但要清楚一件事,即你能使用此方法连接服务器,其他人也可以,所以要保管好你的mysql密码  

例2、 增加一个用户test2密码为abc,让他只可以在localhost上登录,并可以对数据库mydb进行查询、插入、修改、删除的操作 (localhost指本地主机,即MYSQL数据库所在的那台主机),这样用户即使用知道test2的密码,他也无法从internet上直接访问数据 库,只能通过MYSQL主机上的web页来访问了。

grant select,insert,update,delete on mydb.* to “test2”@localhost identified by "abc";  

如果你不想test2有密码,可以再打一个命令将密码消掉。  

grant select,insert,update,delete on mydb.* to “test2”@localhost identified by "";  

grant select,insert,update,delete on dez.* to “test2”@"%" identified by "123456"; 

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門推薦
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板