日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

Mysql视图与数据备份

發布時間:2024/10/6 数据库 40 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Mysql视图与数据备份 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

一.視圖view,是一種結構(有行有列)但沒結果(結構中不存放真實數據)的虛擬表,虛擬表中的結構不是自己定

???? 義而是由基表產生(視圖的的數據來源)

??????????? 1.創建視圖:create view 視圖名字 select 語句(可以是普通select語句、連接查詢、聯合查詢、子查詢);

??????????????????? 1):創建單表視圖:create view stu as select * from student;

??????????????????? 2):創建多表視圖(視圖基表多張的情況下:字段名不能重復):?create view class as select s.*,

????????????????????????????c.teacher,c.room from student as s left join my_class as c?on s.id=c.id;

???????????? 2.查看視圖結構:desc 視圖名稱/show tables/show create view class;

???????????? 3.使用視圖:select * from 視圖名稱;

???????????? 4.修改視圖:alter view? as 新視圖名 select 語句;

???????????? 5.刪除視圖:drop view 視圖名稱;

???????????? 6.視圖的意義:

???????????????????? 1):節省sql語句:可以用視圖保存復雜的sql語句

???????????????????? 2):視圖安全,視圖主要針對數據查詢,如果視圖結構進行處理(刪除),不會影響基表數據(相對安全)。

???????????????????? 3):視圖往往在大型項目、多系統中使用,可以對外提供必要的數據

???????????????????? 4):視圖可以提供友好型,可以專門設計針對不同的需求。

???????????????????? 5):視圖可以更好的進行權限控制

???????????? 7.視圖數據操作

???????????????????? 1):新增數據(針對視圖):不能向多表視圖插數據,視圖如果沒有包含基表中的非空字段則不能插入成功。

?????????????????????????? insert into stu values(6,'leetcode','male',24);

???????????????????? 2):刪除數據:多表試圖不能刪除數據

????????????????????????????

????????????????????????? delete from stu1 where id=1;

??????????????????? 3):更新數據:無論單表還是多表都可以更新視圖

?????????????????????????? update stu_class set sex='male' where id=5;

?????????????????????????? 限制更新

?????????????????????????????create view stu2 as select * from student where age>30 with check option;

??????????????????????????????

??????????????????????? 4)視圖算法:系統對視圖及外部查詢select的一種解析方式

??????????????????????????????????? 1.undefined:未定義(系統默認),這不是一種實際的算法,告訴系統沒有定義算法,系統隨機選擇

??????????????????????????????????? 2.temptable:臨時算法,系統先執行視圖的select語句,后執行外部的查詢語句。

????????????????????????????????????????create algorithm=temptable view stu4 as? select * from student order by height desc;

??????????????????????????????????? 3.merge(效率高,常態):合并算法,系統應先將視圖select語句和外部查詢語句合并后執行查詢。

??????????????????????????????????? 總結:如果視圖select語句中包含(where、group by、having、order by、limit)建議使用temptable

二.數據備份與還原

????????????? 1.概念:備份將當前數據或記錄保留,還原將以保留的數據恢復到對應的表中。

????????????? 2.myisam和innodb:數據存儲對比

?????????????????? ?? 1):innodb只有表結構數據全部存儲在ibadata1文件中

??????????????????? ? 2):myisam將表、數據、索引分別單獨存儲。直接將三個文件放在對應的數據庫下即可使用

??????????????????????

??????????? 3.數據庫高級備份:自己定義字段和行的處理方式

??????????????????? 1.語法:select ? */字段列表?? into outfile 文件路徑?? files 字段處理 lines 行處理??? from 數據源;

??????????? 4.Sql備份及還原

???????????????????? 1) 備份:mysqldump -u root -p 數據庫 表 > E:\sql\student.sql;

???????????????????? 2) 還原:mysql -u root -p 數據庫 <E:\sql\student.sql; 或 source E:\sql\student.sql ???????????????


總結

以上是生活随笔為你收集整理的Mysql视图与数据备份的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。