mysql源代码多少行_数据库是一个庞大的工程,本来想读读mysql的开源代码,可看到代码行数.doc...
數據庫是一個龐大的工程,本來想讀讀mysql的開源代碼,可看到代碼行數
數據庫是一個龐大的工程,本來想讀讀mysql的開源代碼,可看到代碼行數就心寒了,只能一步一步漸進學習了。預計分三步走:1.基本應用,主要以mysql mannul為幫助,基本完成。2.性能調優的學習,參考資料:High.Performance.MySQL,學習mysql中內部機制,包括索引的應用,sql解析過程,另外需要做一些實驗,深入了解。(剛剛開始)3.mysql深入學習,參考資料.Understanding.MySQL.Internals,對mysql源碼進行一些簡單的分析學習。?? 下面就是我在學些mysql性能調優的一些筆記:??? 第一章 Mysql架構??? 1. Optimization and Execution: 優化器和引擎的關系,The optimizer does not really care what storage engine a particular table uses, but the storage engine does affect how the server optimizes query.??? 2. Concurrency Control 解決方式:Read/Write Locks。??? 3. Lock粒度:Table(常用) ,Row(InnoDB and Falcon)。??? 4. Transactions(ACID): Atomicity,Consistency,Isolation,Durability。??? 5. Isolation Levels:READ UNCOMMITTED,READ COMMITTED,REPEATABLE READ(Mysql Defautl),SERIALIZABLE,其差異在于page 9;??? 6. Multiversion Concurrency Control(MVCC):You can think of MVCC as a twist on row-level locking; it avoids the need for locking at all in many cases and can have much lower overhead.It also means different transactions can see different data in the same tables at the same time!(數據會有鏡像,在一個操作未完成的時候,查詢結果不一致)?? ???? InnoDB implements MVCC by storing with each row two additional, hidden values that record when the row was created and when it was expired (or deleted).??? 7. Mysql存儲引擎:各種引擎分析和優缺點介紹,不羅列。??? 8. 選擇引擎需要考慮的問題:Transactions,Concurrency(Table or Row?),Backups(第十一章),Crash recovery(MyISam容易壞,并且恢復慢),Special features(比如全文檢索)。???? 第二章 Finding Bottlenecks: Benchmarking and Profiling??? 1. Benchmarking Strategies:full-stack(整體測試,比如web server) and single-component benchmarking,都需要,在不同的情況下使用不同的測試方式。??? 2. What to Measure:Transactions per time unit,Response time or latency,Scalability(測量在各種情況下的性能),Concurrency(并發性?)。??? 3. Benchmarking Tools??????? Full-Stack Tools:ab,http_load,JMeter,?? ???? Single-Component Tools:mysqlslap,sysbench,Database Test Suite,MySQL Benchmark Suite (sql-bench),Super Smack.??? 第三章 Schema Optimization and Indexing 表定義優化和索引優化(重點章節)??? 1. Choosing Optimal Data Types: ?? ??? ??? ?Sm
總結
以上是生活随笔為你收集整理的mysql源代码多少行_数据库是一个庞大的工程,本来想读读mysql的开源代码,可看到代码行数.doc...的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Centos操作系统基本介绍
- 下一篇: 基于springboot+mysql的房