mysql - 设置mysql用户名和密码

标签 mysql

我最近在家里安装了 easyPHP,用我的计算机作为服务器 (Windows XP) 进行一些开发工作。

easyPHP 设置 apache、php 和 mysql 以在您的计算机上运行。我在为 mysql 帐户设置用户名和密码时遇到问题(遗憾的是,我只通过 cPanel 完成过此操作)。

easyPHP GUI 允许您通过我假设的“root”登录 mySQL,没有密码,但我想尽快更改它。

有什么建议吗?谢谢。

最佳答案

你可以通过这个命令创建一个用户:

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 上的 {PERMISSIONS} 授予 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';

关于mysql - 设置mysql用户名和密码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/576676/

相关文章:

php - 在聊天室中交换消息而不将它们保存在数据库中?

php - 使用 QueryBuilder yii2 使用类似查询构建搜索的问题

mysql - Wordpress 可以与 MySQL Master Master 复制一起使用吗?

mysql - 容器配置和启动的 Docker 依赖设计

PHP - 回显 MySQL SELECT 查询的所有结果

PHP 使用大于和小于在 MySQL 中选择值

php - 在 MySQL 和 Laravel 中预订

mysql - 将两列合并为一列,仅显示所需数据

mysql - 如何为数据库设置SUPER权限

Mysql事务问题