题目:我想要在MySQL效劳器上创立一个新的用户帐号,而且给予他恰当的权力和资本束缚。何如经过指示行的方法来创立而且配置一个MySQL用户呢?
要会见一个MySQL效劳器,你需求运用一个用户帐号登录个中方可停止。每个MySQL用户帐号都有很多与之相关连的属性,比如用户名、暗码以及权力和资本束缚。权力界说了特定用户也许在MySQL效劳器中做甚么,而资本束缚为用户配置了一系列效劳器资本的运用准许。创立或革新一个用户波及到了对用户帐号通盘属性的治理。
上面展现了如安在Linux中创立和配置一个MySQL用户。
首先以root身份登录到MySQL效劳器中。
mysql-uroot-p
当考证提醒浮现的功夫,输入MySQL的root帐号的暗码。
创立一个MySQL用户运用下列指示创立一个用户名和暗码离别为myuser和mypassword的用户。
mysqlCREATEUSERmyuser
localhostIDENTIFIEDBYmypassword;一旦用户被创立后,包罗加密的暗码、权力和资本束缚在内的通盘帐号细节都市被储备在一个名为user的表中,这个表则存在于mysql这个非常的数据库里。
运转下列指示,考证帐号是不是创立胜利
mysqlSELECThost,user,passwordFROMmysql.userWHEREuser=myuser;
给予MySQL用户权力一个新建的MySQL用户没有任何会见权力,这就象征着你不能在MySQL数据库中停止任何操纵。你得给予用户须要的权力。下列是一些可用的权力:
ALL:通盘可用的权力
CREATE:创立库、表和索引
LOCK_TABLES:锁定表
ALTER:修正表
DELETE:简略表
INSERT:插入表或列
SELECT:检索表或列的数据
CREATE_VIEW:创立视图
SHOW_DATABASES:列出数据库
DROP:简略库、表和视图
运转下列指示给予myuser用户特定权力。
mysqlGRANTprivilegesONdatabase.tableTOmyuser
localhost;以上指示中,privileges代表着用逗号隔离的权力列表。即使你想要将权力给予大肆数据库(或表),那末运用星号(*)来取代数据库(或表)的名字。
比如,为所罕见据库/表给予CREATE和INSERT权力:
mysqlGRANTCREATE,INSERTON*.*TOmyuser
localhost;考证给用户给予的全权力:
mysqlSHOWGRANTSFORmyuser
localhost;将集体的权力给予所罕见据库/表:
mysqlGRANTALLON*.*TOmyuser
localhost;你也也许将用户现有的权力简略。运用下列指示废弃myuser帐号的现有权力:
mysqlREVOKEprivilegesONdatabase.tableFROMmyuser
localhost;为用户增加资本束缚在MySQL中,你可认为独自的用户配置MySQL的资本运用束缚。可用的资本束缚下列:
MAX_QUERIES_PER_HOUR:准许的每小时最大哀求数目
MAX_UPDATES_PER_HOUR:准许的每小时最大革新数目
MAX_CONNECTIONS_PER_HOUR:准许的每小时最大联接(LCTT译注:其与MySQL全部变量:max_user_connections协同决意用户到数据库的同时联接数目)数目
MAX_USER_CONNECTIONS:对效劳器的同时联接量
运用下列指示为myuser帐号增长一个资本束缚:
mysqlGRANTUSAGEONdatabase.tableTOmyuser
localhostWITHresource-limits;在resource-limits中你也许指定多个运用空格隔离开的资本束缚。
比如,增长MAXQUERIESPERHOUR和MAXCONNECTIONSPERHOUR资本束缚:
mysqlGRANTUSAGEON*.*TOmyuser
localhostWITHMAX_QUERIES_PER_HOUR30MAX_CONNECTIONS_PER_HOUR6;考证用户的资本束缚:
mysqlSHOWGRANTSFORmyuser
localhost;创立和配置一个MySQL用户着末的一个紧急环节:
mysqlFLUSHPRIVILEGES;
如斯一来厘正便成效了。目前MySQL用户帐号就也许运用了。
via: