代码之家  ›  专栏  ›  技术社区  ›  alex

设置MySQL用户名和密码

  •  1
  • alex  · 技术社区  · 16 年前

    我最近在家里安装了easyphp,以便在我的计算机作为服务器(WindowsXP)运行时进行一些开发工作。

    easyphp设置apache、php和mysql在您的计算机上工作。我在为MySQL帐户设置用户名和密码时遇到了困难(遗憾的是,我只通过cpanel进行过这个操作)。

    EasyHP GUI允许您通过我假设的“根”登录MySQL,不带密码,但我想尽快更改。

    有什么建议吗?谢谢。

    3 回复  |  直到 16 年前
        1
  •  3
  •   farzad    16 年前

    可以通过以下命令创建用户:

    create user user@host;
    

    例子:

    create user farzad@localhost;
    

    然后我为用户设置密码。您可以使用此行为当前登录的用户创建密码:

    set password = password('mynewpassword');
    

    在上面的命令中,password()函数将字符串参数转换为哈希密码,MySQL将使用该密码对用户进行身份验证。如果使用此行:

    set password = 'mynewpassword';
    

    然后输入字符串作为密码,它不是哈希值,因此以后将无法再次登录。所以不要忘记使用password()函数。

    要更改其他用户的密码,请使用以下命令:

    set password for user@host = password('userpassword');
    

    例子:

    set password for farzad@localhost = password('dalkXfda23423');
    

    在创建用户并用密码保护登录之后,您需要为该用户设置权限。使用grant命令执行此操作。一般语法如下:

    将db.table上的权限授予user@host;

    在此命令中,权限是以逗号分隔的权限列表,如选择、插入、创建、删除、删除。您可以将“全部”用作高级权限,以便用户可以执行大部分操作。 table指定用户可以在其中执行操作的特定数据库的表。因此,您可以将用户限制为仅使用数据库的表,或者使用通配符*在所有表或数据库上允许使用。 例子:

    GRANT ALL ON myDb.* to farzad@localhost;
    

    如果您尚未创建用户或设置密码,则可以使用grant命令创建用户、为其设置密码并同时授予所有权限。语法如下:

    GRANT {PERMISSIONS} ON db.table to new_user@host IDENTIFIED BY 'userpassword';
    

    例子:

    GRANT ALL ON myDb.* to farzad@10.0.0.1 IDENTIFIED BY 'dalkXfda23423';
    
        2
  •  0
  •   tehvan    16 年前

    下一段代码(复制自 http://www.debian-administration.org/articles/39 )使用密码创建用户paul(@localhost),并授予它对pauldb数据库的完全权限。所有操作都是在mysql提示下完成的:

    mysql> grant CREATE,INSERT,DELETE,UPDATE,SELECT on pauldb.* to paul@localhost;
    Query OK, 0 rows affected (0.00 sec)
    mysql> set password for paul = password('mysecretpassword');
    Query OK, 0 rows affected (0.00 sec)
    mysql> flush privileges;
    mysql> exit;
    
        3
  •  0
  •   Chad Birch    16 年前

    好吧,如果您只是在寻找更改根密码的方法,并且您有运行SQL命令的方法,那么您需要查找“set password”命令: http://dev.mysql.com/doc/refman/5.0/en/set-password.html

    要创建其他用户并设置他们访问特定数据库的权限,您需要仔细阅读本手册“帐户管理”一章的大部分内容: http://dev.mysql.com/doc/refman/5.0/en/account-management-sql.html