MySQL 4.1/5.0/5.1/5.5/5.6各バージョンの主な区別整理

3178 ワード

バージョンごとのコマンドの違い:

show innodb status\G mysql-5.1
show engines innodb status\G mysql-5.5

grantライセンスmysql-5.5のuser@'%'についてlocalhostは含まれません
-----------------------------------------------------------------------
MySQL 4.1/5.0/5.1/5.5/5.6各バージョンの主な違い
1、4.1サブクエリのサポートを追加し、文字セットにUTF-8を追加し、GROUP BY文にROLLUP、mysqlを追加した.userテーブルは、より良い暗号化アルゴリズムを採用しています. 
2、5.0 Stored procedures、Views、Cursors、Triggers、XA transactionsのサポートが追加され、INFORATION_が追加されました.SCHEMAシステムデータベース. 
3、5.1にEvent scheduler、Partitioning、Pluggable storage engine API、Row-based replication、Globalレベル動的修正general query log、slow query logのサポートが追加されました. 
4、5.5の新しい特徴
1)デフォルトストレージエンジンがInnoDBに変更
2)パフォーマンスと拡張性の向上
a.デフォルトスレッドの同時実行数が増加(innodb_thread_concurrency)
b.バックグラウンド入出力スレッド制御(innodb_read_io_threads、innodb_write_io_threads)
c.メインスレッド入出力レート制御(innodb_io_capacity)
d.オペレーティングシステムメモリ分配プログラム使用制御(innodb_use_sys_malloc)
e.適応ハッシュインデックス(Hash Index)制御により、ユーザは適応ハッシュ機能をオフにすることができる. 
f.Insert Buffering制御は、innodbの挿入バッファ機能をオフにすることができる. 
g.高速ロックアルゴリズムにより拡張性が向上し、innodbはエージェント(posix)スレッドを使用するのではなく、オリジナルの独立した操作を使用して反発および読み書きロックを完了する. 
h.リカバリグループコミット(Restored Group Commit)
i.リカバリ性能の向上
j.マルチバッファプールの例
k.複数のロールバックセグメント(Multiple Rollback Segments)は、以前のinnodbバージョンで最大1023個の同時処理操作を処理でき、現在mysql 5.5最大128 Kの同時処理が可能で、
l.Linuxシステム固有の非同期入出力、mysql 5.5データベースシステムもlinuxシステムの入出力要求の同時数を向上させた. 
m.拡張変化バッファ:削除バッファとクリアバッファを追加
n.ログシステムの反発と個別リフレッシュ(Flush)リストの反発を改善
o.mysql 5でクリアプログラムの進捗を改善する.5では、操作スレッドが独立したスレッドであることが明らかになり、innodb_を使用することができます.purge_treads構成. 
p.トランザクションにおけるメタデータロックを改善する.たとえば、物事の文にテーブルをロックする必要があります.これは、以前の文の終わりにテーブルを解放するのではなく、物事の終わりにテーブルを解放します. 
3)実用性の向上
a.半同期レプリケーション(Semi-synchronous Replication)
b.Heartbeatのコピー
c.中継ログ自動復旧(Automatic Relay Log Recovery)
d.サーバフィルタ項目によるレプリケーション(Replication Per Server Filtering)
e.サーバからのレプリケーションでサポートされているデータ型変換(Replication Slave Side Data Type Conversions)
4)管理性と効率の向上
a.クイックインデックスの作成(Faster Index Creation)
b.効率的なデータ圧縮(Efficient Data Compression)
c.大型物件と可変長列の効率的な記憶を提供する
d.INFORMATIONが追加されましたSCHEMAテーブル、新しいテーブルはInnoDB圧縮とトランザクションロックに関する具体的な情報を提供します. 
5)可用性の向上
a.SIGNAL/RESIGNALに対する新しいSQL構文
b.新しいテーブル/インデックスパーティションオプション.MySQL5.5テーブルとインデックスRANGとLISTパーティションの範囲を非整数列と日付に拡張し、複数の列でパーティション化する能力を追加します. 
6)検査と診断の改善
Mysql5.5 mysqlモニタサーバの実行時のパフォーマンスをモニタする新しいパフォーマンスアーキテクチャ(performancn_shema,P_S)が導入されました.
5、5.6の新しい特徴
1)InnoDBでは、多くのテーブルが開いているときにメモリが多すぎるという問題を制限できます(ここで説明したように)(サードパーティにパッチがあります)
2)InnoDB性能強化.kernel mutexを分割するなど;flush操作はメインスレッドから分離される.複数のpergeスレッド;大メモリ最適化など
3)InnoDBデッドロック情報はerrorログに記録でき、分析しやすい
4)MySQL5.6遅延レプリケーションをサポートし、slaveとmasterの間に時間間隔を制御し、特別な場合のデータ復旧を容易にします.
5)テーブルパーティション機能の強化
6)MySQL行レベルのレプリケーション機能が強化され、ディスク、メモリ、ネットワークなどの資源コストを削減できる(行記録が確定できるフィールドだけを記録すればよい)
7)Binlog実現crash-safe
8)複製イベントcrc 32検査を採用し、master/slave複製データの一致性を強化する
9)新規ロゴ_bin_basename(以前はvariablesにbinlog位置情報がなく、データベースの監督管理が不便でした)
まとめ
以上述べたのは編集者が皆さんに紹介したMySQL 4.1/5.0/5.1/5.5/5.6の各バージョンの主な区別整理で、皆さんに役に立つことを望んでいます.もし皆さんが何か疑問があれば、私にメッセージを送ってください.編集者はすぐに皆さんに返事します.