• MySQL数据库中运用GRANT语句增长新用户




      源头:赛迪网    作者:汽水糖

    这篇文章细致的引见了在MySQL中运用GRANT语句增长新用户的细致步骤,更多内容请参考下文……

    下面的例子显示如何运用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做的异样的工作。

    下列例子增长一个用户custom,他能从主机localhost、server.domain和whitehouse.gov跟尾。他只想要从 localhost存取bankaccount数据库,从whitehouse.gov存取expenses数据库和从完好3台主机存取customer 数据库。他想要从完好3台主机上运用口令stupid。

    为了运用GRANT语句设置个用户的权限,运转这些号令:

    shell> mysql --user=root mysql mysql> GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP ON bankaccount.* TO custom@localhost IDENTIFIED BY 'stupid'; mysql> GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP ON expenses.* TO custom@whitehouse.gov IDENTIFIED BY 'stupid'; mysql> GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP ON customer.* TO custom@'%' IDENTIFIED BY 'stupid';

    颠末间接修改受权表设置用户权限,运转这些号令(注意,在完毕时FLUSH PRIVILEGES):

    shell> mysql --user=root mysql mysql> INSERT INTO user (Host,User,Password) VALUES('localhost','custom',PASSWORD('stupid')); mysql> INSERT INTO user (Host,User,Password) VALUES('server.domain','custom',PASSWORD('stupid')); mysql> INSERT INTO user (Host,User,Password) VALUES('whitehouse.gov','custom',PASSWORD('stupid')); mysql> INSERT INTO db (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> INSERT INTO db (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> INSERT INTO db (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> FLUSH PRIVILEGES;




    版权声明: 原创作品,同意转载,转载时请务必以超链接体式格局标明文章 原始来由 、作者信息和本声明。否则将追查法律责任。

  • 相关阅读:
    【可能是】退役记
    cf3
    react使用antd的Autocomplate时,给onSearch运用lodash的防抖debounce不生效
    依赖项useEffect的执行顺序问题
    AppleDoc 介绍
    AppleDoc 安装步骤
    AppleDoc 使用介绍
    GetKernel32Moudle and GetProcAddress
    TLS回调函数无效
    新的博客地址
  • 原文地址:https://www.cnblogs.com/zgqjymx/p/1974363.html
Copyright © 2020-2023  润新知