mysql创建用户的三种方法

前言:mysql创建用户的方法分成三种:INSERT USER表的方法、CREATE USER的方法、GRANT的方法。

 

一、账号名称的构成方式

账号的组成方式:用户名+主机(所以可以出现重复的用户名,跟其他的数据库不一样)

用户名:16字符以内.

主机名:可以用主机名和IP地址,也可以用通配符

通配符说明:172.18.10.%(IP地址为172.18.10段的所有IP地址都可以访问)

 

二、通过CREATE USER命令进行创建用户

脚本:CREATE USER 'username'@'host' [IDENTIFIED BY 'PASSWORD'] 其中密码是可选项;

 

例子:CREATE USER 'john'@'192.168.189.71' IDENTIFIED BY "123";

CREATE USER 'john'@'192.168.189.%' IDENTIFIED BY "123";

CREATE USER 'john'@' %' ;

说明:该方法创建出来的用户只有连接数据库的权限,需要后续继续授权;

 

三、通过GRANT命令创建用户

个人习惯一般用这种方法进行创建用户,当数据库存在用户的时候GRANT会对用户进行授权,但当数据库不存在该用户的时候,就会创建相应的用户并进行授权。(说明上面那步是多余的)

脚本:

GRANT ON

[object] [IDENTIFIED BY 'password']

[WITH GRANT OPTION];

MAX_QUERIES_PER_HOUR count

MAX_UPDATES_PER_HOUR count

MAX_CONNECTIONS_PER_HOUR count

MAX_USER_CONNECTIONS count

说明:priv代表权限select,insert,update,delete,create,drop,index,alter,grant,references,reload,shutdown,process,file等14个权限

 

例子:mysql>grant select,insert,update,delete,create,drop on test.hr to john@192.168.10.1 identified by '123';

说明:给主机为192.168.10.1的用户john分配可对数据库test的hr表进行select,insert,update,delete,create,drop等操作的权限,并设定口令为123。

 

mysql>grant all privileges on test.* to joe@192.168.10.1 identified by '123';

说明:给主机为192.168.10.1的用户john分配可对数据库test所有表进行所有操作的权限,并设定口令为123。

 

mysql>grant all privileges on *.* to john@192.168.10.1 identified by '123';

说明:给主机为192.168.10.1的用户john分配可对所有数据库的所有表进行所有操作的权限,并设定口令为123。

 

mysql>grant all privileges on *.* to john@localhost identified by '123';

说明:用户john分配可对所有数据库的所有表进行所有操作的权限,并设定口令为123。

 

四、直接向mysql.user表插入记录(该方法个人很少用)

因为数据库的用户信息都是保存在mysql.user这张表的,所以直接对该表进行插入语句,即可完成用户的创建;

mysql> insert into user (host,user,password) values ('%','john',password('123'));

 

五、完成用户的创建后,请记得刷新系统权限表;

mysql>flush privileges;

 

总结:虽然创建用户的方法有三种,个人还是倾向于第二种方法,一步到位,简单明了;

其他的两种方法只是有助于理解数据库的原理而已;

+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

本文作者:JOHN

ORACLE技术博客:ORACLE 猎人笔记               数据库技术群:367875324 (请备注ORACLE管理 )  

+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/12679300/viewspace-1256062/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/12679300/viewspace-1256062/

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
MySQL 创建用户的步骤相对简单,通过 MySQL 的客户端工具或者在命令行模式下运行 SQL 命令即可完成。下面是创建新用户的详细步骤: ### 使用 MySQL 客户端 如果你正在使用图形界面的 MySQL 客户端(如 MySQL Workbench),创建用户的过程会稍显直观一些。以下是一个大致的操作流程: 1. **登录到数据库服务器**:首先,你需要连接到 MySQL 数据库服务器。输入 `mysql -u 用户名 -p` 并按回车键,然后按照提示输入密码。 ```bash mysql -u root -p ``` 输入正确的根账户密码后,你会进入 MySQL 控制台。 2. **创建新用户**:使用 `CREATE USER` 命令添加新的用户,并指定用户名、密码以及用户可以访问的数据库权限。 ```sql CREATE USER 'newuser'@'localhost' IDENTIFIED BY 'password'; ``` 这条命令的意思是创建名为 `newuser` 的用户,并将该用户的密码设置为 `password`,该用户仅能从本地主机(即本机)访问。 3. **授予权限**:为了允许这个新用户能够操作特定数据库,你可以使用 `GRANT` 命令给予相应的权限。例如,给 `newuser` 授予对 `mydatabase` 数据库的所有权限: ```sql GRANT ALL PRIVILEGES ON mydatabase.* TO 'newuser'@'localhost'; ``` 4. **确认并退出**:执行完所有操作后,记得保存更改并在控制台输入 `QUIT` 或 `EXIT` 退出 MySQL。 ```sql FLUSH PRIVILEGES; QUIT ``` ### 直接使用 MySQL 命令行创建用户 如果你是在纯文本的 MySQL 命令行环境中工作,可以按照下面的步骤: 1. 登录到 MySQL 服务: ```bash mysql -u root -p ``` 输入正确的根账户密码。 2. 执行 `CREATE USER` 命令创建新用户: ```sql CREATE USER 'newuser'@'localhost' IDENTIFIED BY 'password'; ``` 3. 使用 `GRANT` 命令分配权限: ```sql GRANT ALL PRIVILEGES ON mydatabase.* TO 'newuser'@'localhost'; ``` 4. 刷新授权信息以应用更改: ```sql FLUSH PRIVILEGES; ``` 5. 确认退出: ```sql QUIT ``` ### 特别注意: - 确保在生产环境下使用强密码,避免安全风险。 - 如果需要更细粒度的权限控制,请查阅官方文档了解如何精确配置各种权限。 - 在实际部署前,务必备份数据以防万一。 --- ##
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值