MySQL创建用户和授权
权限管理:
我们知道我们的最高权限管理者是root用户,它拥有着最高的权限操作。包括select、update、delete、update、grant等操作。那么一般情况在公司之后DBA工程师会创建一个用户和密码,让你去连接数据库的操作,并给当前的用户设置某个操作的权限(或者所有权限)。那么这时就需要我们来简单了解一下:
- 如何创建用户和密码
- 给当前的用户授权
- 移除当前用户的权限
创建新用户的步骤:
1,进入到mysql数据库下
mysql> use mysql Database changed
2,对新用户增删改
1.创建用户: # 指定ip:192.118.1.1的mjj用户登录 create user \'mjj\'@\'192.118.1.1\' identified by \'123\'; # 指定ip:192.118.1.开头的mjj用户登录 create user \'mjj\'@\'192.118.1.%\' identified by \'123\'; # 指定任何ip的mjj用户登录 create use \'mjj\'@\'%\' identified by \'123\'; 2.删除用户 drop user \'用户名\'@\'IP地址\'; 3.修改用户 rename user \'用户名\'@\'IP地址\' to \'新用户名\'@\'IP地址\'; 4.修改密码 set password for \'用户名\'@\'IP地址\'=Password(\'新密码\');
对当前用户授权管理:
#查看权限 show grants for \'用户\'@\'IP地址\' #授权 grant select ,insert,update on db1.t1 to "mjj"@\'%\'; # 表示有所有的权限,除了grant这个命令,这个命令是root才有的。 grant all privileges on db1.t1 to "mjj"@\'%\'; #取消权限 取消来自远程服务器的mjj用户对数据库db1的所有表的所有权限 revoke all on db1.* from \'mjj\'@"%"; 取消来自远程服务器的mjj用户所有数据库的所有的表的权限 revoke all privileges on \'*\' from \'mjj\'@\'%\';
MySQL备份命令行操作:
# 备份:数据表结构+数据 mysqdump -u root db1 > db1.sql -p # 备份:数据表结构 mysqdump -u root -d db1 > db1.sql -p #导入现有的数据到某个数据库 #1.先创建一个新的数据库 create database db10; # 2.将已有的数据库文件导入到db10数据库中 mysqdump -u root -d db10 < db1.sql -p