室内设计找工作网站,好用的开发工具,长春网站制作外包,如何让网站自适应用户管理和授权是属于MySQL当中的DCL语句 创建用户以及一些相关操作 明文创建用户
create user zzrlocalhost IDENTIFIED by 123456;create user 这是创建用户的开头zzr表示用户名
localhost#xff1a;新建的用户可以在哪些主机上登录。即可以使用IP地址#xff0c;网段zzrlocalhost IDENTIFIED by 123456;create user 这是创建用户的开头zzr表示用户名
localhost新建的用户可以在哪些主机上登录。即可以使用IP地址网段主机名都可以IDENTIFIED by 123456; 新建用户的密码
我们可以通过IP地址网段主机名进行创建这些都是对location的操作
zzrlocalhost
zzr192.168.233.0/24
zzr192.168.233.22
zzr%其中 %代表正则任意
加密密码创建用户 SELECT PASSWORD(密码); #先获取加密的密码CREATE USER lisilocalhost IDENTIFIED BY PASSWORD 加密的密码;
登录用户用户名的更改 RENAME USER 旧的用户名旧的主机地址 TO 新的用户名新的主机地址;rename user test120.0.0.100 to zzr20.0.0.100;
重命名之后原本的test1不会保留新的直接覆盖
删除用户
drop user 用户名登录地址;drop user zzrlocalhost; 修改用户密码
set password password(abc123);给其他用户设置密码set password for zzr20.0.0.100 password(123123);
注意终端没有修改密码的权限所以得去命令行进行修改密码操作
root用户是超级管理员它不仅可以修改自身密码还能修改其他用户的密码。
root密码的忘记后的修改找回方法 该操作必须是在数据库本机且为root用户才可进行
vim /etc/my.cnfskip-grant-tables 然后重启数据库即可
systemctl daemon-reload
systemctl start mysqld.service
systemctl enable mysqld 用户的相关权限 权限 权限说明权限级别CREATE创建数据库、表或索引的权限 数据库、表或索引DROP 删除数据库或表的权限数据库或表GRANT OPTION 赋予权限选项 数据库或表REFERENCES 引用权限数据库或表ALTER 更改表的权限数据表DELETE 删除表数据的权限 数据表INDEX操作索引的权限数据表INSERT 添加表数据的权限数据表UPDATE 更新表数据的权限 数据表CREATE VIEW 创建视图的权限视图SHOW VIEW查看视图的权限视图ALTER ROUTINE 更改存储过程的权限存储过程
如何给用户赋权
grant all privileges on *.* to hjlocalhost IDENTIFIED by 123456;grant 赋权的开头语句all PRIVILEGES 赋予所有权限on *.* 所有库on *.* 所有库都有操作权限on hj.* 只能对指定hj库进行操作to hjlocalhost 赋权给哪个用户要和创建用户赋权格式一致。IDENTIFIED by 123456 使用哪个密码进行登录。创建用户时候可以省略
show grants for hjlocalhost;查看权限flush privileges; 权限刷新 如何查看指定用户权限
show grant for 用户名来源地址;show grant for hj20.0.0.100; 如何对权限进行控制
给用户加上权限
grant select on 库名.* to 用户名来源地址 idevtified by 密码;grant select on test.* to test120.0.0.100 idevtified by 123456;flush privileges;
如何给一个用户赋予多个权限
grant select,insert,drop on hj.* to test120.0.0.100 identified by 123456; 如何给用户撤销权限
revoke select on hj.* from test120.0.0.100; 练习
1.创建用户声明网段 test 网段任选 create user test20.0.0.0/24 IDENTIFIED by 123123
2.创建一个库库名test1
3.库中创建两个表分别叫做
table1
id 主键
name 不为空
sex 不为空
CREATE TABLE table1 (
id int(4) PRIMARY KEY,
name_id int(4) NOT NULL,
sex int(4) not null
)
table2
id 主键
address 可以为空 默认-----地址不详
phone 可以为空不能重复
CREATE TABLE table2 (
id int(4) PRIMARY KEY,
address varchar(50) default 地址不详,
phone varchar(12) UNIQUE
)
3.test可以对test1 的库 进行select insert
GRANT SELECT,INSERT on test1.* to test20.0.0.0/24 IDENTIFIED by 123123;
//终端没有权限所以得去root的命令行执行 4.把test的用户名改成test_123密码改成abc123
set passwd for test20.0.0.% password(abc123);
%为正则任意来代表网段 5.删除权限insert删去 总结 1.用户管理操作
create user usernameaddress identified by password; #创建用户 select user,host,authentication_string from mysql.user; #查看用户信息 rename user old_user to new_user; #修改用户名 drop user 用户名来源地址 #删除用户
set password password(XXXX); #修改当前登录用户的密码 set password for 用户名来源地址 password(XXXX); #修改其他用户的密码 select user (); #查看当前登录用户和来源地址
忘记root用户密码的解决方法
修改mysql配置文件/etc/my.cnf在 [mysqld] 配置项下加入 skip-grant-tables
service mysqld restart #重启服务 update mysql.user set authentication_stringpassword(新密码) where userroot;
#修改密码 flush privileges; #刷新数据库
2.用户授权操作
grant 权限列表/ALL ON 库名.表名 to usernameaddress identified by 密码; #授予用户权限 show grants; #查看当前用户自己的权限
show grants for usernameaddress; #查看其他用户的权限 revoke 权限列表/ALL on 库名.表名 from usernameaddress; #撤销用户的权限 。