Mysql创建新用户
2014-02-25 14:07
435 查看
1. 创建用户
语法:
CREATE USER 'username'@'host' IDENTIFIED BY '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'@'%';
实例1:
mysql> create user jss;
这样创建的用户,可以从任意安装了mysql客户端,并能够访问目标服务器的机器上创建连接,无须密码.例如,从ip:10.0.0.99的客户端执行连接:
mysql -ujss -h 172.16.1.110
查看该用户:
mysql> select user,host,password from user where user='jss';
SELECT USER(); //显示当前用户
实例2:
mysql> create user jss_ps identified by 'jss';
用户连接时,必须指定密码,那就可以在创建用户时,通过指定identified by子句来设定密码
用密码登陆:
mysql -ujss_ps -p -h 172.16.1.110
如果希望指定的用户只能从某台指定的域(domain)或主机访问,可以在创建用户时指定host,例如,指定用户只能从10.0.0.99访问
mysql> create user jss_ip@10.0.0.99 identified by password '123456';
2. 使用GRANT语句
语法:mysql> grant 权限1,权限2,...权限n on 数据库名称.表名称 to 用户名@用户地址 identified by '连接口令';
权限1,权限2,...权限n代表
select,insert,update,delete,create,drop,index,alter,grant,references,reload,shutdown,process,file等14个权限
实例:
mysql>grant select,insert,update,delete,create,drop on vtdc.employee to joe@10.163.225.87 identified by '123';
给来自10.163.225.87的用户joe分配可对数据库vtdc的employee表进行select,insert,update,delete,create,drop等操作的权限,并设定口令为123。
mysql>grant all privileges on vtdc.* to joe@10.163.225.87 identified by '123';
给来自10.163.225.87的用户joe分配可对数据库vtdc所有表进行所有操作的权限,并设定口令为123。
mysql>grant all privileges on *.* to joe@10.163.225.87 identified by '123';
给来自10.163.225.87的用户joe分配可对所有数据库的所有表进行所有操作的权限,并设定口令为123。
mysql>grant all privileges on *.* to joe@localhost identified by '123';
给本机用户joe分配可对所有数据库的所有表进行所有操作的权限,并设定口令为123。
3. 直接向mysql.user表插入记录:
mysql> insert into user (host,user,password) values ('%','jss_insert',password('jss'));
mysql>flush privileges; //刷新系统权限表
4. 修改mysql用户密码方式:
a. 使用mysqladmin语法:mysqladmin -u用户名 -p旧密码 password 新密码
例如:mysqladmin -u root -p 123 password 456;
b. 直接修改user表的用户口令:
语法:update mysql.user set password=password('新密码') where User="phplamp" and Host="localhost";
实例:update user set password=password('54netseek') where user='root';
flush privileges;
c. 使用SET PASSWORD语句修改密码:语法:
SET PASSWORD FOR 'username'@'host' = PASSWORD('newpassword');
如果是当前登陆用户用SET PASSWORD = PASSWORD("newpassword");
实例:
set password for root@localhost=password('');
SET PASSWORD FOR name=PASSWORD('new password');
SET PASSWORD FOR 'pig'@'%' = PASSWORD("123456");
5. 删除用户和撤销权限:
a. 取消一个账户和其权限
Drop USER user;
drop user username@'%'
drop user username@localhost
b. 取消授权用户:
语法:REVOKE privilege ON databasename.tablename FROM 'username'@'host';
例子: REVOKE SELECT ON *.* FROM 'pig'@'%';
REVOKE SELECT ON test.user FROM 'pig'@'%';
revoke all on *.* from sss@localhost ;
revoke all on user.* from 'admin'@'%';
SHOW GRANTS FOR 'pig'@'%'; //查看授权
c. 删除用户:
语法: Delete from user where user = "user_name" and host = "host_name" ;
例子:delete from user where user='sss' and host='localhost';
转自:http://blog.csdn.net/leili0806/article/details/8573636
语法:
CREATE USER 'username'@'host' IDENTIFIED BY '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'@'%';
实例1:
mysql> create user jss;
这样创建的用户,可以从任意安装了mysql客户端,并能够访问目标服务器的机器上创建连接,无须密码.例如,从ip:10.0.0.99的客户端执行连接:
mysql -ujss -h 172.16.1.110
查看该用户:
mysql> select user,host,password from user where user='jss';
SELECT USER(); //显示当前用户
实例2:
mysql> create user jss_ps identified by 'jss';
用户连接时,必须指定密码,那就可以在创建用户时,通过指定identified by子句来设定密码
用密码登陆:
mysql -ujss_ps -p -h 172.16.1.110
如果希望指定的用户只能从某台指定的域(domain)或主机访问,可以在创建用户时指定host,例如,指定用户只能从10.0.0.99访问
mysql> create user jss_ip@10.0.0.99 identified by password '123456';
2. 使用GRANT语句
语法:mysql> grant 权限1,权限2,...权限n on 数据库名称.表名称 to 用户名@用户地址 identified by '连接口令';
权限1,权限2,...权限n代表
select,insert,update,delete,create,drop,index,alter,grant,references,reload,shutdown,process,file等14个权限
实例:
mysql>grant select,insert,update,delete,create,drop on vtdc.employee to joe@10.163.225.87 identified by '123';
给来自10.163.225.87的用户joe分配可对数据库vtdc的employee表进行select,insert,update,delete,create,drop等操作的权限,并设定口令为123。
mysql>grant all privileges on vtdc.* to joe@10.163.225.87 identified by '123';
给来自10.163.225.87的用户joe分配可对数据库vtdc所有表进行所有操作的权限,并设定口令为123。
mysql>grant all privileges on *.* to joe@10.163.225.87 identified by '123';
给来自10.163.225.87的用户joe分配可对所有数据库的所有表进行所有操作的权限,并设定口令为123。
mysql>grant all privileges on *.* to joe@localhost identified by '123';
给本机用户joe分配可对所有数据库的所有表进行所有操作的权限,并设定口令为123。
3. 直接向mysql.user表插入记录:
mysql> insert into user (host,user,password) values ('%','jss_insert',password('jss'));
mysql>flush privileges; //刷新系统权限表
4. 修改mysql用户密码方式:
a. 使用mysqladmin语法:mysqladmin -u用户名 -p旧密码 password 新密码
例如:mysqladmin -u root -p 123 password 456;
b. 直接修改user表的用户口令:
语法:update mysql.user set password=password('新密码') where User="phplamp" and Host="localhost";
实例:update user set password=password('54netseek') where user='root';
flush privileges;
c. 使用SET PASSWORD语句修改密码:语法:
SET PASSWORD FOR 'username'@'host' = PASSWORD('newpassword');
如果是当前登陆用户用SET PASSWORD = PASSWORD("newpassword");
实例:
set password for root@localhost=password('');
SET PASSWORD FOR name=PASSWORD('new password');
SET PASSWORD FOR 'pig'@'%' = PASSWORD("123456");
5. 删除用户和撤销权限:
a. 取消一个账户和其权限
Drop USER user;
drop user username@'%'
drop user username@localhost
b. 取消授权用户:
语法:REVOKE privilege ON databasename.tablename FROM 'username'@'host';
例子: REVOKE SELECT ON *.* FROM 'pig'@'%';
REVOKE SELECT ON test.user FROM 'pig'@'%';
revoke all on *.* from sss@localhost ;
revoke all on user.* from 'admin'@'%';
SHOW GRANTS FOR 'pig'@'%'; //查看授权
c. 删除用户:
语法: Delete from user where user = "user_name" and host = "host_name" ;
例子:delete from user where user='sss' and host='localhost';
转自:http://blog.csdn.net/leili0806/article/details/8573636
相关文章推荐
- MySQL:日期函数、时间函数总结(MySQL 5.X)
- Ubuntu下无法使用root登录Mysql的解决办法
- CYYMysql 源码解读 4
- 修改Ubuntu默认的MySQL表名大小写区分
- MySQL性能优化
- MySQL Benchmark(全文)
- mysql汉字按字母顺序排序
- MySQL global Log
- mysql : 常用管理命令
- mysql优化Analyze Table
- SqlServer和Mysql 时间字段格式化
- mysql创建定时任务(V2.10)
- 17 mysql XA事务
- mysql缓存设置
- MySQL中EXPLAIN解释命令
- mysql配置文件my.cnf详解
- mysql互为主从配置(双主模型) 推荐
- MySQL 5.1升级到MySQL 5.5的步骤
- mysql触发器
- MySQL之数据库操作