仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 879|回复: 8
打印 上一主题 下一主题

[学习教程] MYSQL教程之MySQL数据库中利用GRANT语句增加新用户

[复制链接]
老尸 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-16 20:13:33 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
最近由权威调查机构Evans数据公司进行的一项调查显示,MySQL在过去两年已经获得了25%的市场份额。该调查公司还预测,相比其他的开源数据库和闭源数据库。这篇论坛文章(赛迪网手艺社区)具体的先容了在MySQL中利用GRANT语句增加新用户的详细步骤,更多内容请参考下文……<Pstyle="TEXT-INDENT:2em">上面的例子显现怎样利用MySQL客户安装新用户。这些例子假定权限已缺省被安装。这意味着为了改动,你必需在MySQL正在运转统一台呆板上,你必需作为MySQLroot用户毗连,而且root用户必需对MySQL数据库有insert权限和reload办理权限。别的,假如你改动了root用户口令,你必需以下的MySQL命令指定它。<Pstyle="TEXT-INDENT:2em"><Pstyle="TEXT-INDENT:2em">你能够经由过程收回GRANT语句增添新用户:<Pstyle="TEXT-INDENT:2em"><Pstyle="TEXT-INDENT:2em">shell>mysql--user=rootmysqlmysql>GRANTALLPRIVILEGESON*.*TOmonty@localhostIDENTIFIEDBYsomethingWITHGRANTOPTION;mysql>GRANTALLPRIVILEGESON*.*TOmonty@"%"IDENTIFIEDBYsomethingWITHGRANTOPTION;mysql>GRANTRELOAD,PROCESSON*.*TOadmin@localhost;mysql>GRANTUSAGEON*.*TOdummy@localhost;<Pstyle="TEXT-INDENT:2em"><Pstyle="TEXT-INDENT:2em"><Pstyle="TEXT-INDENT:2em">这些GRANT语句安装3个新用户:<Pstyle="TEXT-INDENT:2em"><Pstyle="TEXT-INDENT:2em">monty:能够从任何中央毗连服务器的一个完整的超等用户,可是必需利用一个口令(something做这个。注重,我们必需对monty@localhost和monty@"%"收回GRANT语句。假如我们增添localhost条目,对localhost的匿名用户条目在我们从当地主机毗连接时由mysql_install_db创立的条目将优先思索,由于它有更特定的Host字段值,以是以user表分列按次看更早到来。<Pstyle="TEXT-INDENT:2em"><Pstyle="TEXT-INDENT:2em">admin:能够从localhost没有一个口令举行毗连而且被授与reload和process办理权限的用户。这同意用户实行mysqladminreload、mysqladminrefresh和mysqladminflush-*命令,另有mysqladminprocesslist。没有授与数据库有关的权限。他们能在今后经由过程收回另外一个GRANT语句受权。<Pstyle="TEXT-INDENT:2em"><Pstyle="TEXT-INDENT:2em">dummy:能够不必一个口令毗连的一个用户,可是只能从当地主机。全局权限被设置为N--USAGE权限范例同意你无需权限便可设置一个用户。它假定你将在今后授与数据库相干的权限。<Pstyle="TEXT-INDENT:2em"><Pstyle="TEXT-INDENT:2em">你也能够间接经由过程收回INSERT语句增添一样的用户存失信息,然后告知服务器再次装进受权表:<Pstyle="TEXT-INDENT:2em"><Pstyle="TEXT-INDENT:2em">shell>mysql--user=rootmysqlmysql>INSERTINTOuserVALUES(localhost,monty,PASSWord(something),Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y)mysql>INSERTINTOuserVALUES(%,monty,PASSWORD(something),Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y)mysql>INSERTINTOuserSETHost=localhost,User=admin,Reload_priv=Y,Process_priv=Y;mysql>INSERTINTOuser(Host,User,Password)VALUES(localhost,dummy,);mysql>FLUSHPRIVILEGES;<Pstyle="TEXT-INDENT:2em"><Pstyle="TEXT-INDENT:2em"><Pstyle="TEXT-INDENT:2em">取决于你的MySQL版本,对上述,你大概必需利用一个分歧数量Y值(在3.22.11之前的版本有更少的权限列)。对admin用户,只用在3.22.11入手下手的版本具有的加倍可读的INSERT扩大的语法。<Pstyle="TEXT-INDENT:2em"><Pstyle="TEXT-INDENT:2em">注重,为了设置一个超等用户,你只需制造一个user表条目,其权限字段设为Y。不必要db或host表的条目。<Pstyle="TEXT-INDENT:2em"><Pstyle="TEXT-INDENT:2em">在user表中的权限列不是由最初一个INSERT语句明白设置的(对dummy用户),因而那些列被付与缺省值N。这是GRANTUSAGE做的一样的事变。<Pstyle="TEXT-INDENT:2em"><Pstyle="TEXT-INDENT:2em">以下例子增添一个用户custom,他能从主机localhost、server.domain和whitehouse.gov毗连。他只想要从localhost存取bankaccount数据库,从whitehouse.gov存取expenses数据库和从一切3台主机存取customer数据库。他想要从一切3台主机上利用口令stupid。<Pstyle="TEXT-INDENT:2em"><Pstyle="TEXT-INDENT:2em">为了利用GRANT语句设置个用户的权限,运转这些命令:<Pstyle="TEXT-INDENT:2em"><Pstyle="TEXT-INDENT:2em">shell>mysql--user=rootmysqlmysql>GRANTSELECT,INSERT,UPDATE,DELETE,CREATE,DROPONbankaccount.*TOcustom@localhostIDENTIFIEDBYstupid;mysql>GRANTSELECT,INSERT,UPDATE,DELETE,CREATE,DROPONexpenses.*TOcustom@whitehouse.govIDENTIFIEDBYstupid;mysql>GRANTSELECT,INSERT,UPDATE,DELETE,CREATE,DROPONcustomer.*TOcustom@%IDENTIFIEDBYstupid;<Pstyle="TEXT-INDENT:2em"><Pstyle="TEXT-INDENT:2em"><Pstyle="TEXT-INDENT:2em">经由过程间接修正受权表设置用户权限,运转这些命令(注重,在停止时FLUSHPRIVILEGES):<Pstyle="TEXT-INDENT:2em">shell>mysql--user=rootmysqlmysql>INSERTINTOuser(Host,User,Password)VALUES(localhost,custom,PASSWORD(stupid));mysql>INSERTINTOuser(Host,User,Password)VALUES(server.domain,custom,PASSWORD(stupid));mysql>INSERTINTOuser(Host,User,Password)VALUES(whitehouse.gov,custom,PASSWORD(stupid));mysql>INSERTINTOdb(Host,Db,User,Select_priv,Insert_priv,Update_priv,Delete_priv,Create_priv,Drop_priv)VALUES(localhost,bankaccount,custom,Y,Y,Y,Y,Y,Y);mysql>INSERTINTOdb(Host,Db,User,Select_priv,Insert_priv,Update_priv,Delete_priv,Create_priv,Drop_priv)VALUES(whitehouse.gov,expenses,custom,Y,Y,Y,Y,Y,Y);mysql>INSERTINTOdb(Host,Db,User,Select_priv,Insert_priv,Update_priv,Delete_priv,Create_priv,Drop_priv)VALUES(%,customer,custom,Y,Y,Y,Y,Y,Y);mysql>FLUSHPRIVILEGES;
任何规模的组织都可能受益于外包服务,并在一个标准化和优化的平台上统一其数据库管理任务。基于其本身的特性,DBaaS提供了敏捷和高效的数据库服务,它可以支持多变的需求。
金色的骷髅 该用户已被删除
沙发
发表于 2015-1-18 18:53:01 | 只看该作者
只能告诉你,学好数据库语言和原理,多见识几种数据库软件,比一棵树上吊死要好。
谁可相欹 该用户已被删除
板凳
发表于 2015-1-18 18:53:02 | 只看该作者
总感觉自己还是不会SQL
小女巫 该用户已被删除
地板
发表于 2015-1-27 18:09:15 | 只看该作者
连做梦都在想页面结构是怎么样的,绝非虚言
5#
发表于 2015-2-5 14:31:43 | 只看该作者
一直以来个人感觉SQLServer的优化器要比Oracle的聪明。SQL2005的更是比2k聪明了不少。(有次作试验发现有的语句在200万级时还比50万级的相同语句要快show_text的一些提示没有找到解释。一直在奇怪。)
若相依 该用户已被删除
6#
发表于 2015-2-12 07:00:17 | 只看该作者
比如,MicrosoftSQLServer2008的某一个版本可以满足现在的这个业务的需要,而且价格还比Oracle11g要便宜,那么这一产品就是适合的。
山那边是海 该用户已被删除
7#
发表于 2015-3-3 00:15:26 | 只看该作者
SQLServer的异构移植功能个人感觉最好了。(如果对比过SQLServer的链接服务器和Oracle的透明网关的朋友会发现SQLServer的sp_addlinkedserver(openquery)异构数据库系列比Oracle真是强太多了。)
精灵巫婆 该用户已被删除
8#
发表于 2015-3-11 08:14:29 | 只看该作者
但换公司用MSSQL2K感觉自己好像根本就不了解MSSQL。什么DTS触发器以前根本没用过。
爱飞 该用户已被删除
9#
发表于 2015-3-25 09:41:11 | 只看该作者
理解了存储结构,再阅读下性能优化的章节基本上会对sqlserver有个清晰地认识
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-5-22 23:08

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表