我最近在家里安装了easyPHP,用我的计算机作为服务器(Windows XP)进行一些开发工作。
easyPHP设置apache,php和mysql在您的计算机上运行。我无法设置mysql帐户的用户名和密码(遗憾的是,我只是通过cPanel完成此操作)。
easyPHP GUI允许您通过我认为没有密码的“root”登录mySQL,但我想尽快更改此内容。
有什么建议吗?感谢。
答案 0 :(得分:3)
您可以通过此命令创建用户:
create user user@host;
示例:
create user farzad@localhost;
然后我为用户设置了密码。您可以使用此行为您登录的当前用户创建密码:
set password = password('mynewpassword');
在上面的命令中,password()函数将string参数转换为一个哈希密码,mysql将使用该密码对用户进行身份验证。如果你使用这一行:
set password = 'mynewpassword';
然后您输入了字符串作为密码,并且它不是哈希值,因此您将无法再次登录。所以不要忘记使用password()函数。
要更改其他用户的密码,请使用以下命令:
set password for user@host = password('userpassword');
示例:
set password for farzad@localhost = password('dalkXfda23423');
创建用户并使用密码保护登录后,您需要为用户设置权限。使用GRANT命令执行此操作。一般语法是这样的:
GRANT {PERMISSIONS} ON db.table TO user @ host;
在此命令中,权限是逗号分隔的权限列表,如SELECT,INSERT,CREATE,DROP,DELETE。您可以将ALL用作高级权限,以便用户可以执行大部分操作。 db.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';
答案 1 :(得分:0)
下一段代码(从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;
答案 2 :(得分:0)
好吧,如果您只是想找到一些方法来更改root密码,并且您有办法运行SQL命令,那么您正在寻找“SET PASSWORD”命令: {{3 }}
要创建其他用户并通过访问特定数据库进行设置,您需要查看手册“帐户管理”一章的大部分内容:http://dev.mysql.com/doc/refman/5.0/en/set-password.html < / p>