MySQL数据库中用GRANT语句增添新用户

2008-02-23 07:37:34来源:互联网 阅读 ()

新老客户大回馈,云服务器低至5折

  下面的例子显示出如何使用MySQL客户安装新用户。这些例子假定权限已缺省被安装。这意味着为了改变,您必须在MySQL正在运行同一台机器上,您必须作为MySQL root用户连接,并且root用户必须对MySQL数据库有insert权限和reload管理权限。另外,假如您改变了root用户口令,您必须如下的MySQL命令指定他。

  您能够通过发出GRANT语句增加新用户:

以下是引用片段:
  shell> mysql --user=root mysql
  mysql> GRANT ALL PRIVILEGES ON *.* TO monty@localhost
  IDENTIFIED BY 'something' WITH GRANT OPTION;
  mysql> GRANT ALL PRIVILEGES ON *.* TO monty@"%"
  IDENTIFIED BY 'something' WITH GRANT OPTION;
  mysql> GRANT RELOAD,PROCESS ON *.* TO admin@localhost;
  mysql> GRANT USAGE ON *.* TO dummy@localhost;

  这些GRANT语句安装3个新用户:

  monty:能够从任何地方连接服务器的一个完全的终极用户,但是必须使用一个口令('something'做这个。注意,我们必须对monty@localhost和monty@"%"发出GRANT语句。假如我们增加localhost条目,对localhost的匿名用户条目在我们从本地主机连接接时由mysql_install_db创建的条目将优先考虑,因为他有更特定的Host字段值,所以以user表排列顺序看更早到来。

  admin:能够从localhost没有一个口令进行连接并且被授予reload和process管理权限的用户。这允许用户执行mysqladmin reload、mysqladmin refresh和mysqladmin flush-*命令,更有mysqladmin processlist。没有授予数据库有关的权限。他们能在以后通过发出另一个GRANT语句授权。

  dummy:能够不用一个口令连接的一个用户,但是只能从本地主机。全局权限被配置为'N'--USAGE权限类型允许您无需权限就可配置一个用户。他假定您将在以后授予数据库相关的权限。

  您也能够直接通过发出INSERT语句增加同样的用户存取信息,然后告诉服务器再次装入授权表:

  shell> mysql --user=root mysql
  mysql> INSERT INTO user VALUES('localhost','monty',PASSWORD('something'),
  'Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y')
  mysql> INSERT INTO user VALUES('%','monty',PASSWORD('something'),
  'Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y')
  mysql> INSERT INTO user SET Host='localhost',User='admin',
  Reload_priv='Y', Process_priv='Y';
  mysql> INSERT INTO user (Host,User,Password)
  VALUES('localhost','dummy','');
  mysql> FLUSH PRIVILEGES;

  取决于您的MySQL版本,对上述,您可能必须使用一个不同数目'Y'值(在3.22.11以前的版本有更少的权限列)。对admin用户,只用在3.22.11开始的版本具备的更加可读的INSERT扩充的语法。

  注意,为了配置一个终极用户,您只需创造一个user表条目,其权限字段设为'Y'。无需db或host表的条目。

  在user表中的权限列不是由最后一个INSERT语句明确配置的(对dummy用户),因此那些列被赋予缺省值'N'。这是GRANT USAGE做的同样的事情。

共2页。 1 2 :

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇: 使用Excel分析MySQL数据

下一篇: 了解MYSQL数据库调度和锁定的问题