1. 程式人生 > >騰訊課堂-面試題講解

騰訊課堂-面試題講解

騰訊課堂-面試題講解

###常見的資料庫面試題

  • sql分類
    • DQL查詢
    • DML操縱
    • TCL事務控制
    • DDL定義
    • DCL控制
  • Mysql中Innodb和MyIsam的區別
    • 支援事務,後者不支援
    • 支援行鎖,後者只支援表鎖
    • 支援外接,後者不支援
    • 不支援全文索引,後者支援
  • MySQL如何做主備
    • 冷備,停機,copy物理檔案
    • 熱備,檔案快照
    • 溫備,mysqldump,二進位制日誌檔案
      • 儲存的是命令
  • 常用的SQL函式?
    • 數學函式
    • 字串函式
      • Oracle字串拼接使用||
      • Mysql字串拼接使用concat
    • 日期和時間函式
    • 條件判斷函式
    • 系統資訊函式
    • 加密函式
    • 格式化函式
  • 如何檢視一個查詢用到哪個index
    • explain
  • 如何強制mysql使用index
    • force
  • 資料庫查詢效能下降,想找到哪些SQL耗時比較長,應該如何操作?my.cnf裡如何配置
    • slow_query_log = ON 開啟慢查詢
    • slow_query_log_file = /usr/local/mysql/data/slow.log
    • long_query_time = 1
  • mysql鎖的型別
    • 根據鎖的型別分,可以分為共享鎖,排它鎖,意向共享鎖,意向排他鎖,字串函式
    • 根據鎖的細粒度分,又可以分為行鎖,表鎖,條件判斷函式
  • 聊一聊資料庫的優化?
    • 分析:sql慢的原因
      • 1.併發量大
        • 快取,考慮有的訪問能不能不從資料庫中剔除掉,熱點資料用redis快取
        • ElasticSearch搜尋引擎沒有有效期
        • 連線數過多,我們選擇搭建叢集,MyCat資料庫中介軟體,讀寫分離,分表分片規則,S-JDBC資料庫中介軟體也可以實現
      • 2.資料量大
        • sql語句的優化
          • 資料型別
          • 索引優化
        • 讀寫分離
        • 分片
    • 落地:
      • 準備大量資料 insert into select
      • 實施優化方案,
      • 1.使用慢查詢,篩選需要優化的sql語句
      • 2.索引,提高查詢速度
      • 3.分片
      • 4.分離,將經常查詢的資料儲存到快取中介軟體中
      • 5,總結