MySQL_07-Storage Engine & View & Management

Table of contents

1. Storage engine

1. Basic introduction

2. Storage engine/table type characteristics

3. Use cases

2. View

1. Basic concepts

2. Correspondence between view and real table

3. Basic use of views

4. View best practices

Four, MySQL management

1. User management

1. MySQL user

2. Modify user login password

2. Authority management

1. Privileges in MySQL

2. Permission case

3. MySQL management details


1. Storage engine

1. Basic introduction

-- 查看所有存储引擎
show ENGINES

2. Storage engine/table type characteristics

b5962223c17f5442130a9960c9790cf8.png

3. Use cases

Example of user online status:

2. View

1. Basic concepts

View: A view is a virtual table whose contents are defined by a query. Like real tables, views contain columns whose data comes from corresponding real tables (base tables).

2. Correspondence between view and real table

3. Basic use of views

-- 视图
select * from emp;

-- 创建视图
create view emp_view01 as select id,name,sex,job,deptno from emp;

-- 查看视图结构
desc emp_view01;

-- 查看视图内容
select * from emp_view01;
select id,name,sex,job,deptno from emp_view01;

-- 查看创建视图的指令
show create view emp_view01;

-- 删除视图
drop view emp_view01;

4. View best practices

-- 视图案例:多表
create view emp_view02 as 
select name,sex,job,emp.deptno,dname from emp,dept where emp.deptno=dept.deptno;
select * from emp_view02;

result:

Four, MySQL management

1. User management

1. MySQL user

-- MySQL管理,根据需要创建不同的用户,赋予相应的权限,供人员使用
-- 创建新用户
create user 'feiyang'@'localhost' IDENTIFIED by '123456'

-- 新增用户
select * from mysql.user;

-- 删除用户
drop user 'feiyang'@'localhost'

2. Modify user login password

-- 修改用户登录密码
-- 设置本用户的密码
set password = password('abcd1234')

--  设置其他用户密码
set password  for 'feiyang'@'localhost' = password('qazwsx')

2. Authority management

1. Privileges in MySQL

2. Permission case

-- 案例
-- 1.创建一个用户并且只可以从本地登录
create user 'feiyang'@'localhost' IDENTIFIED by '123456'

-- 2.创建库testdb下的news表
create database testdb;

create table testdb.news(
		id int,
		name varchar(32)
)

-- 3.给用户分配查看news表和添加数据的权限
grant select,insert on testdb.news to 'feiyang'@'localhost' 

-- 4.测试看用户是否只有这几个权限,切换到feiyang用户
insert into testdb.news values(1,'张三');  -- 有
select * from testdb.news; -- 有
delete from testdb.news; -- 无


-- 5.修改密码
set password  for 'feiyang'@'localhost' = password('abc')

-- 6.重新登录

-- 7.使用root用户删除你的用户
drop user 'feiyang'@'localhost'

-- 8.回收权限
revoke insert on testdb.news from 'feiyang'@'localhost'

3. MySQL management details

-- 用户管理授权细节
-- 不指定host则为%,%表示所有的ip都有连接权限
create user jack;
select * from mysql.user;

-- 可以指定可以访问的ip段
create user 'rose'@'192.168.1.*';

Guess you like

Origin blog.csdn.net/lu_xin5056/article/details/125477101