ホームページ >データベース >mysql チュートリアル >MySQL 8.0.0 開発マイルストーン バージョンがリリースされました!_MySQL
MySQL 開発チームは 12 日に MySQL 8.0.0 開発マイルストーン バージョン (DMR) のリリースを発表しました。 MySQL がなぜ 5.x から 8.0 に急上昇したのかに驚く人もいるかもしれません。実際、MySQL 5.x シリーズは Oracle に買収される前の 5.1 から始まり、買収後も 5.5、5.6、5.7 と 5.x を維持し続けてきました。実際、元のリリース リズムに従う場合、5.6.x は 6.x、5.7.x は 7.x と考えることができます。したがって、バージョンの命名方法を変更しただけです。
とはいえ、今回リリースされたMySQL 8.0.0開発版には、まだまだ見どころがたくさんあります。
MySQL 8.0.0 ハイライト
トランザクションデータディクショナリ、MyISAMストレージエンジンから完全に分離
実際にデータ ディクショナリを InnoDB のいくつかのテーブルに配置すると、FRM、TRG、PAR ファイルはもう必要ありません。情報スキーマがデータ ディクショナリ テーブルのビューとして表示されるようになりました。原則として、MyISAM データ テーブル タイプはまったく必要なく、すべてのシステム テーブルを InnoDB に配置できます。
SQL ロール
ロールは権限の集合です。ロールを作成したり、ユーザーにロールを付与したり削除したりできます。これは権限管理に便利です。
utf8mb4 文字セットがデフォルトの文字セットになり、Unicode 9 をサポートします
デフォルトの文字セットは latin1 から utf8mb4 に変更され、デフォルトの照合順序は latin1_swedish_ci から utf8mb4_800_ci_ai に変更されます。
非表示のインデックス
一部のインデックスは SQL オプティマイザーが使用しないように非表示にすることができますが、バックグラウンドで更新され続けます。必要に応じていつでも可視性を回復できます。
バイナリデータに対してビット演算を実行できます
BIGINT でビット操作を実行できるだけでなく、8.0 以降では [VAR]BINARY/[TINYMEDIUMLONG]BLOB でのビット操作もサポートされています。
IPv6とUUIDによる動作の改善
INET6_ATON () と INET6_NTOA () はビット演算を実行できるようになりました。これは、INET6_ATON () が VARBINARY (16) データ型 (128 ビット) を返すようになったためです。 UUID の操作が改善され、3 つの新しい関数 UUID_TO_BIN ()、BIN_TO_UUID ()、および IS_UUID () が導入されました。 MySQL には特別な IPv6 および UUID データ型はありませんが、VARBINARY (16) データ型で格納されます。
永続グローバル変数
SET PERSIST を使用して、再起動しても保持される永続的なグローバル変数を設定できます。
パフォーマンスデータベースパフォーマンススキーマの改善
たとえば、より高速な検索を可能にするために、100 を超えるインデックスがパフォーマンス データベースに追加されました。
SQL パーサーをリファクタリングします
SQL アナライザーの継続的かつ段階的な改善。古いパーサーには、構文の複雑さとトップダウン解析アプローチにより重大な制限があり、維持および拡張が困難でした。
コストモデル
InnoDB バッファーは、メイン メモリ キャッシュにあるテーブルとインデックスの数を推定できるようになりました。これにより、アクセス方法を選択するときに、オプティマイザーがデータをメモリに保存できるか、ディスクに保存する必要があるかを認識できるようになります。
ヒストグラム
ヒストグラムを使用することで、ユーザーまたは DBA はデータ分布に関する統計を作成でき、これをクエリの最適化で使用して、最適化されたクエリ ソリューションを見つけることができます。
スキャンパフォーマンスの向上
InnoDB 範囲クエリのパフォーマンスが向上しました。これにより、テーブル全体のクエリと範囲クエリのパフォーマンスが 5 ~ 20% 向上します。
BLOBを再構築
BLOB のリファクタリングにより、フラグメントの読み取り/更新操作が高速化され、JSON データ操作が高速化されます。
持続的に自己価値を高める
InnoDB は、自動インクリメント シーケンスの最大値を REDO ログに保存します。この改善により、非常に古いバグ #199 も修正されます。
一時テーブル
圧縮一時テーブルのサポートを削除し、一時テーブルのメタデータをメモリに保存します。
さらに重要な改善点と詳細については、MySQL 8.0.0 リリースのお知らせ [1] および [2] を参照してください。
ダウンロード
現時点では、8.0.0 はまだ開発バージョンです。最新の機能を体験してテストしたい場合は、dev.mysql.com[3] から各プラットフォームのインストール パッケージをダウンロードできます。ただし、MySQL ソフトウェア パッケージはますます大きくなり、Linux プラットフォーム上のバイナリ パッケージは 1 GB 近くになります。運用環境で使用する場合は、8.0 が安定バージョンになる前に、5.7 シリーズを引き続き使用してください。最新バージョンは 5.7.15 GA バージョンであり、これはわずか 600 M を超えます。
最新のソースコードは GitHub にありますので、興味のある方は中国人からの投稿をご覧ください。
[1]: http://dev.mysql.com/doc/relnotes/mysql/8.0/en/
[2]: http://mysqlserverteam.com/the-mysql-8-0-0-milestone-release-is-available/
[3]: http://dev.mysql.com/downloads/mysql/