面試題記錄 - 資料庫
阿新 • • 發佈:2020-02-28
資料庫基礎
- 安裝資料庫
- 檢視(如何使用,有什麼用)
- 子查詢、標量子查詢、關聯子查詢
資料庫操作
- 表的建立、刪除、更新
- 常用函式
- order by 預設升序
select * from tablename order by c2 asc; #升
select * from tablename order by c2 desc; #降
select * from tablename order by c1 asc,c2 desc;
問題
-
ACID - 原子性、一致性、隔離性、永續性
-
主鍵和外來鍵
主鍵:唯一地標識表中的每一行
外來鍵:外來鍵是相對於主鍵說的,是用於建立表之間 的聯絡,外來鍵作主關鍵字的表被稱為主表,具有 此外來鍵的表被稱為主表的從表。用於與另一張表的關聯。比如這裡有兩張,user(使用者)表和qx(許可權)表,user中gid是使用者許可權id,而gid是依賴於qx中的id。那麼qx中的id就是user的外來鍵。
-
Mysql的行鎖和表鎖( 鎖是計算機協調多個程序或純執行緒併發訪問某一資源的機制)
- 表級鎖
- 每次操作鎖住整張表。開銷小,加鎖快;不會出現死鎖;鎖定粒度大,發生鎖衝突的概率最高,併發度最低;
- 行級鎖
- 每次操作鎖住一行資料。開銷大,加鎖慢;會出現死鎖;鎖定粒度最小,發生鎖衝突的概率最低,併發度也最高;
- Mysql 2種儲存引擎
儲存引擎:就是如何儲存資料、如何為儲存的資料建立索引和如何更新、查詢資料等技術的實現方法。 在Oracle 和SQL Server等資料庫中只有一種儲存引擎。而MySql資料庫提供了多種儲存引擎。
- MyISAM特點
-
- 不支援行鎖(MyISAM只有表鎖),不支援事務;不支援外來鍵;不支援崩潰後的安全恢復
- 在表有讀取查詢的同時,支援往表中插入新紀錄
- 支援全文索引
- InnoDB(MySQL的預設資料庫引擎)
-
- 支援行鎖,支援事務,支援外來鍵,支援崩潰後的安全恢復
- 不支援全文索引
- Mysql預設配置檔名:my.cnf