数据库部分重点内容回顾
1.什么是聚集索引?
樹(shù)形結(jié)構(gòu)將數(shù)據(jù)組織和存儲(chǔ)起來(lái),起到加速查詢(xún)的效果
2.主鍵索引怎么添加?
(1)聚集索引(主鍵索引)的添加方式,創(chuàng)建時(shí)添加
方式一:
Create table t1(
id int primary key,
)
方式二:
Create table t1(
Id int,
Primary key(id)
)
?
(2)唯一索引創(chuàng)建時(shí)添加:
方式一:
Create table t1(
Id int unique,
)
?方式二:
Create table t1(
Id int,
unique key uni_name (id)
)
?
(3)表創(chuàng)建完了之后添加:
Alter table 表名 add primary key(id)
(4)刪除主鍵索引:
Alter table 表名 drop primary key;
?
普通索引:
(4)創(chuàng)建:
Create table t1(
Id int,
Index index_name(id)
)
?
Alter table s1 add index index_name(id);
Create index index_name on s1(id);
?
(5)刪除:
Alter table s1 drop index u_name;
DROP INDEX 索引名 ON 表名字;
?
Show create table 表名;
?
3.Sql優(yōu)化神器explain :
查看一下sql的預(yù)執(zhí)行效率
4.數(shù)據(jù)備份
導(dǎo)出: mysqldump -h ip -P 3306? -u 用戶(hù)名 -p密碼 -B? 庫(kù)名.表名> 路徑 庫(kù)名.sql
導(dǎo)入?: mysql -u 用戶(hù)名 -p密碼 < 路徑 庫(kù)名.sql
5.
創(chuàng)建用戶(hù),指定權(quán)限
創(chuàng)建用戶(hù):root用戶(hù) 超級(jí)管理員
Use mysql
Create user ‘用戶(hù)名’@’%’ identified by ‘密碼’
?
用戶(hù):chao(*.* 代表所有庫(kù),所有表)
分配權(quán)限:Grant select,insert,update on *.* to ‘chao’@’%’;
?
Revoke all on 庫(kù)名.表名 from ‘chao’@’%’;
Flush privileges;
?
6.觸發(fā)器(娜姐:對(duì)數(shù)據(jù)的增刪改查之前或者之后,自動(dòng)觸發(fā)SQL語(yǔ)句)
Delimiter //
Create trigger t_name before(after) insert(update\delete) on 表名 for each row
Begin
Select * from xx;
?
End //
Delimiter ;
?
7.注意,這個(gè)還需要多理解
存儲(chǔ)過(guò)程:
Create procedure p1(
In n1 int,
Out n2 int,
Inout n3 int
)
?
Begin
If while
End
#上邊是主要代碼?
?
Set @res = 1;
Set @res2 = 2
Call p1(1,@res,@res2); #調(diào)用
Select @res,@res2;
Cursor.callproc(‘p1’,(1,2,3))
Cursor.fetchall()
?
Sql=’select @_p1_0,@_p1_1,@_p1_2;’
Cursor.execute(sql)
Cursor.fetchall()
8.
事務(wù):
四大特性:原子性\一致性\隔離性\持久性
Start transaction;
一堆sql語(yǔ)句
如果失敗了
?
Declare exit handler for sqlexception(sqlwarning) #聲明退出處理對(duì)于sql異常
begin
Rollback;
End
?
Commit;
9.數(shù)據(jù)庫(kù)集群 :
當(dāng)網(wǎng)站的訪問(wèn)量比較大的時(shí)候,查看自己的信息(存儲(chǔ)在數(shù)據(jù)庫(kù)里邊的數(shù)據(jù)),但是數(shù)據(jù)量非常大的訪問(wèn),首先連接數(shù)據(jù)庫(kù),一個(gè)數(shù)據(jù)庫(kù)承受的數(shù)據(jù)比較多,承受不住多開(kāi)幾個(gè)數(shù)據(jù)庫(kù),將性能分散,通過(guò)算法實(shí)現(xiàn),這個(gè)算法寫(xiě)在python程序中.
10.數(shù)據(jù)庫(kù)讀寫(xiě)分離
? 一個(gè)數(shù)據(jù)庫(kù)專(zhuān)門(mén)讀操作,一個(gè)數(shù)據(jù)庫(kù)專(zhuān)門(mén) 寫(xiě)操作,寫(xiě)的被分到讀的庫(kù)里.
11.主從復(fù)制&&高可用 :?
別人訪問(wèn)數(shù)據(jù)庫(kù),數(shù)據(jù)庫(kù)崩了,公司為了不出現(xiàn)這種情況,需要實(shí)時(shí)備份數(shù)據(jù),(包括增量備份//實(shí)時(shí)備份//雙機(jī)備份),binlog(日志文件),主庫(kù)崩了,客戶(hù)端都要連接這個(gè)主機(jī),備份的數(shù)據(jù)庫(kù)要頂上用,高可用就是瞬間替換之前的數(shù)據(jù)庫(kù).
轉(zhuǎn)載于:https://www.cnblogs.com/studybrother/p/10321687.html
總結(jié)
以上是生活随笔為你收集整理的数据库部分重点内容回顾的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 做梦梦到自己笑醒好不好
- 下一篇: 梦到下冰雹了是什么预兆