Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
檀越@新空间
Coding Tree
提交
8ff4fa37
C
Coding Tree
项目概览
檀越@新空间
/
Coding Tree
通知
2
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
C
Coding Tree
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
You need to sign in or sign up before continuing.
提交
8ff4fa37
编写于
4月 07, 2022
作者:
彭世瑜
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
fix
上级
77bf2fad
变更
3
隐藏空白更改
内联
并排
Showing
3 changed file
with
166 addition
and
3 deletion
+166
-3
blog/php-mysql/index.md
blog/php-mysql/index.md
+2
-0
blog/php-mysql/sql-bak.md
blog/php-mysql/sql-bak.md
+0
-3
blog/php-mysql/sql-power.md
blog/php-mysql/sql-power.md
+164
-0
未找到文件。
blog/php-mysql/index.md
浏览文件 @
8ff4fa37
...
@@ -47,3 +47,5 @@
...
@@ -47,3 +47,5 @@
[
子查询 sub query
](
blog/php-mysql/sql-subquery.md
)
[
子查询 sub query
](
blog/php-mysql/sql-subquery.md
)
[
数据库备份与还原
](
blog/php-mysql/sql-bak.md
)
[
数据库备份与还原
](
blog/php-mysql/sql-bak.md
)
[
用户权限管理
](
blog/php-mysql/sql-power.md
)
blog/php-mysql/sql-bak.md
浏览文件 @
8ff4fa37
...
@@ -88,6 +88,3 @@ source mydatabase.bak.sql;
...
@@ -88,6 +88,3 @@ source mydatabase.bak.sql;
方式三:手动复制粘贴(不推荐)
方式三:手动复制粘贴(不推荐)
打开备份文件,复制所有SQL指令,粘贴到mysql命令行中执行
打开备份文件,复制所有SQL指令,粘贴到mysql命令行中执行
https://www.bilibili.com/video/BV1Vx411g7uJ?p=54&spm_id_from=pageDriver
\ No newline at end of file
blog/php-mysql/sql-power.md
0 → 100644
浏览文件 @
8ff4fa37
# 用户权限管理
在不同的项目中,给不同的角色(开发者)不同的操作权限,保证数据库数据的安全
## 1、用户管理
mysql的用户信息保存在了mysql.user中
```
sql
select
*
from
mysql
.
user
\
G
***************************
5
.
row
***************************
Host
:
localhost
User
:
root
Select_priv
:
Y
Insert_priv
:
Y
Update_priv
:
Y
Delete_priv
:
Y
Create_priv
:
Y
Drop_priv
:
Y
Reload_priv
:
Y
Shutdown_priv
:
Y
Process_priv
:
Y
File_priv
:
Y
Grant_priv
:
Y
References_priv
:
Y
Index_priv
:
Y
Alter_priv
:
Y
Show_db_priv
:
Y
Super_priv
:
Y
Create_tmp_table_priv
:
Y
Lock_tables_priv
:
Y
Execute_priv
:
Y
Repl_slave_priv
:
Y
Repl_client_priv
:
Y
Create_view_priv
:
Y
Show_view_priv
:
Y
Create_routine_priv
:
Y
Alter_routine_priv
:
Y
Create_user_priv
:
Y
Event_priv
:
Y
Trigger_priv
:
Y
Create_tablespace_priv
:
Y
ssl_type
:
ssl_cipher
:
x509_issuer
:
x509_subject
:
max_questions
:
0
max_updates
:
0
max_connections
:
0
max_user_connections
:
0
plugin
:
mysql_native_password
authentication_string
:
*
6
BB4837EB74329105EE4568DDA7DC67ED2CA2AD9
password_expired
:
N
password_last_changed
:
2020
-
02
-
05
22
:
46
:
27
password_lifetime
:
NULL
account_locked
:
N
Create_role_priv
:
Y
Drop_role_priv
:
Y
Password_reuse_history
:
NULL
Password_reuse_time
:
NULL
Password_require_current
:
NULL
User_attributes
:
NULL
```
主要字段
```
主机名和用户名共同组成复合主键
Host 主机名,允许访问的客户端,*代表所有客户端都可以访问
User 用户名
```
### 1.1、创建用户
方式一:直接使用root用户在mysql.user中插入记录(不推荐)
方式二:使用创建用户的SQL指令
基本语法
```
sql
create
user
用户
identified
by
明文密码
-- 用户 用户名@主机地址
-- 主机地址: '' 或者 %
```
示例
```
sql
create
user
'user1'
@
'%'
identified
by
'123456'
;
-- 查看mysql.user表中是否存在新用户
select
user
,
host
from
mysql
.
user
where
user
=
'user1'
;
+
-------+------+
|
user
|
host
|
+
-------+------+
|
user1
|
%
|
+
-------+------+
```
简化版创建用户,谁都可以访问,不需要密码,不安全
```
sql
create
user
user2
;
```
### 1.2、删除用户
user和host具有唯一性
基本语法
```
sql
drop
user
用户名
@
host
;
```
示例
```
sql
mysql
>
drop
user
'user1'
@
'%'
;
Query
OK
,
0
rows
affected
(
0
.
01
sec
)
mysql
>
select
user
,
host
from
mysql
.
user
where
user
=
'user1'
;
Empty
set
(
0
.
00
sec
)
```
### 1.3、修改用户密码
需要使用函数对密码进行加密
`password()`
方式一:使用专门的修改密码指令
基本语法
```
sql
set
password
for
用户
=
password
(
明文密码
);
set
password
for
'user1'
@
'%'
=
password
(
654321
);
-- mysql5.7后续版本,8.0可用
alter
user
'user1'
@
'%'
identified
by
'654321'
;
```
方式二:使用更新语法
基本语法
```
sql
update
mysql
.
user
set
password
=
password
(
明文密码
)
where
user
=
''
and
host
=
''
;
update
mysql
.
user
set
password
=
password
(
'123456'
)
where
user
=
'user1'
and
host
=
'%'
;
-- 8.0报错
update
mysql
.
user
set
authentication_string
=
password
(
'123456'
)
where
user
=
'user1'
and
host
=
'%'
;
```
## 2、权限管理
### 2.1、授予权限 grant
### 2.2、取消权限 revoke
### 2.3、刷新权限 flush
## 3、密码丢失的解决方案
https://www.bilibili.com/video/BV1Vx411g7uJ?p=55&spm_id_from=pageDriver
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录