MySQL赋予用户权限命令总结

MySQL用户可用权限

一个新建的MySQL用户没有任何访问权限,这就意味着你不能在MySQL数据库中进行任何操作。你得赋予用户必要的权限。以下是一些可用的权限:

ALL: 所有可用的权限

CREATE: 创建库、表和索引

LOCK_TABLES: 锁定表

ALTER: 修改表

DELETE: 删除表

INSERT: 插入表或列

SELECT: 检索表或列的数据

CREATE_VIEW: 创建视图

SHOW_DATABASES: 列出数据库

DROP: 删除库、表和视图

grant、index、references、reload、shutdown、process等等

赋予权限基本命令格式

mysql> grant 权限1,权限2 on 数据库名称.表名称 to 用户名@用户地址 identified by ‘连接口令’;

当权限1,权限2,…被all privileges或者all代替,表示赋予用户全部权限。
当数据库名称.表名称被*.*代替,表示赋予用户操作服务器上所有数据库所有表的权限。
用户地址可以是localhost,也可以是ip地址、机器名字、域名。也可以用‘%‘表示从任何地址连接。
‘连接口令’不能为空,否则创建失败。
  • 在MySQL安装完成后,为了确保数据库的安全性,通常我们都使用mysqladmin命令给数据管理员root用户添加密码,允许远程登录并赋予所有权限。
  • 例1
mysql> grant all privileges on *.* to ‘root‘@‘%‘ identified by ‘abc123‘ with grant option;

赋予所有特殊权限给root用户,可以从任何IP地址远程登录,密码为abc123,且拥有grant赋予权限的权限
  • 例2
mysql> grant select,insert,update,delete,create,drop on school.info to [email protected] identified by ‘123‘;

给来自192.168.100.100的用户test分配可对数据库school的info表进行select,insert,update,delete,create,drop等操作的权限,并设定口令为123。
  • 例3
mysql> grant all privileges on school.* to test[email protected] identified by ‘123‘;

给来自192.168.100.100的用户test分配可对数据库school所有表进行所有操作的权限,并设定口令为123。
  • 例4
mysql>grant all privileges on *.* to [email protected] identified by ‘123‘;

给本机用户test分配可对所有数据库的所有表进行所有操作的权限,并设定口令为123。
  • 注:在mysql模式中,当赋予用户权限或者权限设定后,重要的一步使得命令立即生效:

mysql>flush privileges

忘记密码 重置密码

systemctl stop mysqld.service
mysqld --skip-grant-tables 启动数据库不使用授权表
source /etc/profile
mysql 进入数据库
> update mysql.user set authentication_string=password (‘123456‘) where user=‘root‘;
> flush privileges; 刷新数据库

init 6 重启

  • 注:若是想默认直接跳过账户验证,可直接通过在主配置文件中添加:

vim /etc/my.cnf

[mysqld]
skip-grant-tables      //添加跳过验证命令
user=mysql
basedir = /usr/local/mysql
datadir = /usr/local/mysql/data
port = 3306
....
  • 重启MySQL服务

systemctl restart mysqld.service

如上,当再次进入MySQL时即可跳过验证,直接进入。

原文地址:http://blog.51cto.com/13659253/2140043

时间: 2024-10-07 01:55:55

MySQL赋予用户权限命令总结的相关文章

企业是怎么给MYSQL赋予用户权限

MYSQL创建用户及赋予用户权限 运维人员常用的方法: mysql> grant all  on xiaohu.* to '[email protected]' identified by '123.com'; 库.表 Query OK, 0 rows affected (0.01 sec) grant语法 grant all privileges on dbname.* to [email protected] identified by 'password' 比如创建boy的用户,对qiqi

mysql创建用户、赋予指定权限命令

1.远程登录mysql mysql -h ip -u root -p 密码 2.创建用户 格式:grant 权限 on 数据库.* to 用户名@登录主机 identified by "密码"; 例1:增加一个test1用户,密码为123456,可以在任何主机上登录,并对所有数据库有查询,增加,修改和删除的功能.需要在mysql的root用户下进行 mysql>grant select,insert,update,delete on *.* to [email protected

mysql grant用户权限设置

MySQL 赋予用户权限命令的简单格式可概括为: grant 权限 on 数据库对象 to 用户 一.grant 普通数据用户,查询.插入.更新.删除 数据库中所有表数据的权利. grant select on testdb.* to [email protected]'%' grant insert on testdb.* to [email protected]'%' grant update on testdb.* to [email protected]'%' grant delete

MySQL查看用户权限的两种方法

http://yanue.net/post-96.html MySQL查看用户权限命令的两方法: 一. 使用MySQL grants MySQL grant详细用法见:http://yanue.net/post-97.html使用方法: mysql> show grants for [email protected]; 实例: mysql> show grants for [email protected]; +-----------------------------------------

创建MySQL用户及赋予用户权限

创建MySQL用户及赋予用户权限 1.通过help查看grant命令帮助 -- CREATE USER 'jeffrey'@'localhost' IDENTIFIED BY 'mypass'; GRANT ALL ON db1.* TO 'jeffrey'@'localhost'; GRANT SELECT ON db2.invoice TO 'jeffrey'@'localhost'; GRANT USAGE ON *.* TO 'jeffrey'@'localhost' WITH MAX_

mysql中用户权限导出的脚本

MySQL数据库备份和迁移,是DBA日常工作中,经常需要做的工作.备份一般由物理备份和逻辑备份两种,对于用xtrabackup进行物理备份来说,表数据和用户权限都会全部备份和恢复:如果是逻辑备份的话,用户数据和授权信息都需要单独的导出导入,用户数据直接用 mysqldump 工具导出导入即可,但mysql中用户权限不能直接导出导入,一个权限一个权限的处理,有比较麻烦. 所以编写一个mysql用户权限脚本,对源数据库中的用户授权信息进行导出,就非常必要了.只要有用户权限的授权sql,不论是平时备份

MYSQL 备份用户权限

MYSQL 备份用户权限 datadbblack 192.168.1.10 是 SELECT, RELOAD, SHOW DATABASES, LOCK TABLES  否 权限列表 1.Select  读取 2.SHOW DATABASES 允许访问完整的数据库列表 4. LOCK TABLES 允许锁定表 5.RELOAD 允许载入和刷新服务器缓存 以上几点是必须的.请注意

12、创建mysql用户及赋予用户权限

1.通过help命令查看grant的用法: CREATE USER 'jeffrey'@'localhost' IDENTIFIED BY 'password'; GRANT ALL ON db1.* TO 'jeffrey'@'localhost'; GRANT SELECT ON db2.invoice TO 'jeffrey'@'localhost'; GRANT USAGE ON *.* TO 'jeffrey'@'localhost' WITH MAX_QUERIES_PER_HOUR

[MySQL]查看用户权限与GRANT用法

摘自:http://apps.hi.baidu.com/share/detail/15071849 查看用户权限 show grants for 你的用户 比如:show grants for [email protected]'localhost'; Grant 用法 GRANT USAGE ON *.* TO 'discuz'@'localhost' IDENTIFIED BY PASSWORD '*C242DDD213BE9C6F8DA28D49245BF69FC79A86EB';GRAN