mysql用户操作

一, 创建用户:

命令:CREATE USER ‘username‘@‘host‘ IDENTIFIED BY ‘password‘;

说明:username - 你将创建的用户名, host - 指定该用户在哪个主机上可以登陆,如果是本地用户可用localhost,
如果想让该用户可以从任意远程主机登陆,可以使用通配符%. password -
该用户的登陆密码,密码可以为空,如果为空则该用户可以不需要密码登陆服务器.

例子: CREATE USER ‘dog‘@‘localhost‘ IDENTIFIED BY ‘123456‘;
CREATE USER ‘pig‘@‘192.168.1.101_‘ IDENDIFIED BY ‘123456‘;
CREATE USER ‘pig‘@‘%‘ IDENTIFIED BY ‘123456‘;
CREATE USER ‘pig‘@‘%‘ IDENTIFIED BY ‘‘;
CREATE USER ‘pig‘@‘%‘;

二,授权:

命令:GRANT privileges ON databasename.tablename TO ‘username‘@‘host‘

说明: privileges - 用户的操作权限,如SELECT , INSERT , UPDATE
等(详细列表见该文最后面).如果要授予所的权限则使用ALL.;databasename -
数据库名,tablename-表名,如果要授予该用户对所有数据库和表的相应操作权限则可用*表示, 如*.*.

例子: GRANT SELECT, INSERT ON test.user TO ‘pig‘@‘%‘;
GRANT ALL ON *.* TO ‘pig‘@‘%‘;

注意:用以上命令授权的用户不能给其它用户授权,如果想让该用户可以授权,用以下命令:
GRANT privileges ON databasename.tablename TO ‘username‘@‘host‘ WITH GRANT OPTION;

三.设置与更改用户密码

命令:SET PASSWORD FOR ‘username‘@‘host‘ = PASSWORD(‘newpassword‘);如果是当前登陆用户用SET PASSWORD = PASSWORD("newpassword");

例子: SET PASSWORD FOR ‘pig‘@‘%‘ = PASSWORD("123456");

四.撤销用户权限

命令: REVOKE privilege ON databasename.tablename FROM ‘username‘@‘host‘;

说明: privilege, databasename, tablename - 同授权部分.

例子: REVOKE SELECT ON *.* FROM ‘pig‘@‘%‘;

注意: 假如你在给用户‘pig‘@‘%‘授权的时候是这样的(或类似的):GRANT SELECT ON test.user TO
‘pig‘@‘%‘, 则在使用REVOKE SELECT ON *.* FROM
‘pig‘@‘%‘;命令并不能撤销该用户对test数据库中user表的SELECT 操作.相反,如果授权使用的是GRANT SELECT ON
*.* TO ‘pig‘@‘%‘;则REVOKE SELECT ON test.user FROM
‘pig‘@‘%‘;命令也不能撤销该用户对test数据库中user表的Select 权限.

具体信息可以用命令SHOW GRANTS FOR ‘pig‘@‘%‘; 查看.

五.删除用户

命令: DROP USER ‘username‘@‘host‘;

时间: 2025-01-19 14:35:56

mysql用户操作的相关文章

mysql用户操作和权限管理

用户操作与权限管理 MySQL用户操作 创建用户 方法一: CREATE USER语句创建 CREATE USER "用户名"@"IP地址" IDENTIFIED BY "密码"; 方法二: INSERT语句创建 INSERT INTO mysql.user(user,host, password,ssl_cipher,x509_issuer,x509_subject) VALUES(‘用户名’,’IP地址’,password(‘密码’),’’,

mysql由浅入深探究(二)----mysql用户操作

上一节我们完成了mysql的安装,现在我们将开启实战模式,完成一些基本的mysql操作.这节我们分为一些几个内容: mysql中用户新建 mysql中用户删除 mysql中用户修改 mysql中用户查看 接下来的几章的内容分布都是按照这个模式进行的----增删改查,这也是数据库的本质. mysql中用户的新建:我们不是创建了root用户了吗?为什么还需要创建用户,原因很简单,就像linux一样,有了root,但是还是需要创建其他用户,因为root的权限太高,很多操作我们并不希望所有的用户都有权限

MySQL数据库(7)_用户操作与权限管理、视图、存储过程、触发器、基本函数

用户操作与权限管理 MySQL用户操作 创建用户 方法一: CREATE USER语句创建 CREATE USER "用户名"@"IP地址" IDENTIFIED BY "密码"; 方法二: INSERT语句创建 INSERT INTO mysql.user(user,host, password,ssl_cipher,x509_issuer,x509_subject) VALUES('用户名','IP地址',password('密码'),'',

0816关于MySQL的审计 init-connect+binlog实现用户操作追踪

转自:http://blog.sina.com.cn/s/blog_605f5b4f01013xkv.html mysql 用init-connect+binlog实现用户操作追踪 做access 的ip的log 记录 在MYSQL中,每个连接都会先执行init-connect,进行连接的初始化.我们可以在这里获取用户的登录名称和thread的ID值.然后配合binlog,就可以追踪到每个操作语句的操作时间,操作人等.实现审计. 实验过程:1:创建登录日志库,登录日志表 CREATE DATAB

MySql常用操作语句(1:启动、连接数据库及用户操作)

下方将个人常用的MySql操作语句(Win7下)总结如下: 1. 启动与关闭数据库 “管理员”权限, MySql安装目录下bin目录//:  1.1 启动 @>net start mysql  1.2 关闭 @>net stop mysql;  1.3 问题:服务名无效 这种情况是mysql服务没有安装,这时需要在同个目录下安装服务: @>mysqld -install 相应地,卸载命令是: @>mysqld -remove 2. 连接数据库 “管理员”权限, MySql安装目录下

【Mysql】常用指令之——用户操作(创建,授权,修改,删除)

Mysql中的用户 user 每一个user都对应了不同的用户地址和权限 创建Mysql用户共有三种方式1.create user 2.grant 3.操作mysql.user表 1.CREATE USER 'username'@'host' IDENTIFIED BY 'password'; 例子: CREATE USER 'aa'@'localhost' IDENTIFIED BY '123456'; CREATE USER 'aa'@'192.168.1.101_' IDENDIFIED

mysql颠覆实战笔记(三)-- 用户登录(二):保存用户操作日志的方法

版权声明:笔记整理者亡命小卒热爱自由,崇尚分享.但是本笔记源自www.jtthink.com(程序员在囧途)沈逸老师的<web级mysql颠覆实战课程 >.如需转载请尊重老师劳动,保留沈逸老师署名以及课程来源地址. 现在我们接着上节课,完成第二个功能,不管成功不成功都记录一个日志. 一.回顾上节课内容,我们在user_log表中添加一个字段 user_id.  在上一节课的存储过程新增一行代码,如下: BEGIN set @gid=0; set @user_name=''; set @_res

mysql 用户方面的操作

1.只新建用户的操作 mysql -u root -p密码mysql> insert into mysql.user(Host,User,Password) values(‘localhost’,'czc’,password('root'));mysql>flush privileges; mysql>exit; mysql -uczc -prootmysql>登录成功 2.既新建用户也授权的操作 mysql -u root -p密码mysql>create database

在MySQL中使用init-connect与binlog来实现用户操作追踪记录

前言:测试环境莫名其妙有几条重要数据被删除了,由于在binlog里面只看到是公用账号删除的,无法查询是那个谁在那个时间段登录的,就考虑怎么记录每一个MYSQL账号的登录信息,在MYSQL中,每个连接都会先执行init-connect,进行连接的初始化,我们可以在这里获取用户的登录名称和thread的ID值.然后配合binlog,就可以追踪到每个操作语句的操作时间,操作人等.实现审计. 1,在mysql服务器db中建立单独的记录访问信息的库set names utf8;create databas