公式ドキュメントアドレス:第23章MySQLNDBクラスター8.0
23.1NDBクラスターの概要
23.2NDBクラスターのインストール23.3NDBクラスターの
構成
23.4NDBクラスタープログラム23.5NDBクラスターの
管理
23.6NDBクラスターレプリケーション
23.7NDBクラスターリリースノート
MySQL NDB Clusterは、分散コンピューティング環境に適した、高可用性で冗長性の高いMySQLのバージョンです。新しくリリースされたNDBクラスターシリーズは、NDBストレージエンジンのNDBCLUSTER
最初の8
バージョン(とも呼ばれます)を使用して、MySQLサーバーやその他のソフトウェアを複数のコンピューターで実行できるようにします。バージョン8.0.19以降にGeneralAvailability(GA)としてリリースされたNDB Cluster 8.0は、8.0バージョンのNDBストレージエンジンを統合しています。NDB Cluster7.6およびNDBCluster 7.5は、それぞれNDBの7.6および7.5バージョンを使用して、GAバージョンとして引き続き提供されます。以前のGAバージョンは、実稼働環境、つまりNDBバージョン7.4と7.3をそれぞれ含むNDBクラスター7.4とNDBクラスター7.3で引き続き使用できます。NDB 7.2以前のバージョンのシリーズは、サポートまたは保守されなくなりました。
Oracleによって構築された標準のMySQLServer 8.0バイナリファイルには、NDBストレージエンジンのサポートが含まれていません。代わりに、オラクルのNDBクラスターバイナリを使用するユーザーは、サポートされているプラットフォームに基づいて最新のNDBクラスターバイナリにアップグレードする必要があります。これらのプラットフォームには、ほとんどのLinuxディストリビューションと互換性のあるRPMが含まれています。ソースコードからビルドされたNDBCluster 8.0のユーザーは、MySQL 8.0が提供するソースコードを使用し、ビルド時にNDBサポートに必要なオプションを提供する必要があります。
重要
MySQLNDBクラスターはInnoDBクラスターをサポートしていません。InnoDBクラスターはMySQLServer 8.0とともにデプロイし、NDBクラスターディストリビューションに含まれていないInnoDBストレージエンジンおよびその他のアプリケーションを使用する必要があります。MySQL Server8.0バイナリはMySQLNDBクラスタでは使用できません。23.1.6 MySQLサーバーで使用されるInnoDBとNDBクラスターの比較では、NDBとInnoDBストレージエンジンの違いについて説明しました。
この章には、NDBクラスターバージョン8.0から8.0.24に関する情報が含まれています。NDB Cluster 8.0がリリースされました(NDB 8.0.19以降)。新しい展開にはこのバージョンを使用することをお勧めします。利用可能な最新バージョンはNDB8.0.23です。NDB Cluster 7.6および7.5は以前のGAバージョンであり、本番環境でも引き続きサポートされています。NDBCluster7.6の詳細については、NDB Cluster7.6の新機能を参照してください。NDB Cluster 7.5の同様の情報については、NDB Cluster7.5の新機能を参照してください。NDBクラスター7.4および7.3は以前のGAバージョンであり、本番環境でも引き続きサポートされますが、本番環境での新しいデプロイメントではNDBクラスター8.0を使用することをお勧めします。MySQLNDBクラスター7.3およびNDBクラスター7.4を参照してください。
サポートされているプラットフォーム。NDBクラスターは現在利用可能であり、多くのプラットフォームでサポートされています。オペレーティングシステムのバージョン、オペレーティングシステムのリリース、およびハードウェアプラットフォームの特定の組み合わせによって提供されるサポートの正確なレベルについては、https://www.mysql.com/support/supportedplatforms/cluster.htmlを参照してください。
可用性。NDBクラスターのバイナリパッケージとソースパッケージは、https://dev.mysql.com/downloads/cluster/から入手できます。
NDBクラスターのリリース番号。NDB 8.0は、MySQL8.0.13およびMySQLNDB Cluster 8.0.13以降、MySQL Server8.0シリーズと同じリリースモデルに従います。このマニュアルおよびその他のMySQLドキュメントでは、「NDB」で始まるバージョン番号を使用して、これら以降のNDBクラスターのバージョンを判別します。このバージョン番号は、NDB 8.0バージョンで使用されているNDBCLUSTERストレージエンジンのバージョン番号と、NDB Cluster8.0バージョンのベースとなっているMySQL8.0サーバーのバージョン番号です。
NDBクラスターソフトウェアで使用されるバージョン文字列。MySQL NDBクラスターリリースによって提供されるmysqlクライアントによって表示されるバージョン文字列は、次の形式を使用します。
mysql-mysql_server_version-cluster
mysql_server_version
NDBクラスターがリリースされているMySQLサーバーのバージョンを示します。すべてのNDBクラスター8.0バージョンの場合、これは8.0バージョンです。n、ここでnはリリース番号です。-DWITH_NDBCLUSTER
または同様の方法を使用してソースからコンパイルする場合、バージョン文字列に-cluster
サフィックスが追加されます。(23.2.1.4 LinuxのソースコードからのNDBクラスターの構築および23.2.2.2 WindowsのソースコードからのNDBクラスターのコンパイルとインストールを参照)mysqlクライアントで使用される形式は次のとおりです。
shell> mysql
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 2
Server version: 8.0.24-cluster Source distribution
Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
mysql> SELECT VERSION()\G
*************************** 1. row ***************************
VERSION(): 8.0.24-cluster
1 row in set (0.00 sec)
MySQL 8.0を使用するNDBクラスターの最初の一般バージョンは、MySQL8.0.19を使用するNDB8.0.19です。
他のNDBクラスタープログラムによって表示されるバージョン文字列は、通常、MySQL8.0リリースには含まれていません。次の形式を使用してください。
mysql-mysql_server_version ndb-ndb_engine_version
mysql_server_version
NDBクラスターがリリースされているMySQLサーバーのバージョンを示します。すべてのNDBクラスター8.0バージョンの場合、これは8.0バージョンです。n、ここでnはリリース番号です。ndb_engine_version
これは、このバージョンのクラスターソフトウェアで使用されるNDBストレージエンジンのバージョンです。すべてのNDB8.0バージョンで、この番号はMySQLServerバージョンと同じです。SHOW
以下に示すように、ndb_mgmクライアントのコマンドの出力でこの形式を確認できます。
ndb_mgm> SHOW
Connected to Management Server at: localhost:1186
Cluster Configuration
---------------------
[ndbd(NDB)] 2 node(s)
id=1 @10.0.10.6 (mysql-8.0.25 ndb-8.0.24, Nodegroup: 0, *)
id=2 @10.0.10.8 (mysql-8.0.25 ndb-8.0.24, Nodegroup: 0)
[ndb_mgmd(MGM)] 1 node(s)
id=3 @10.0.10.2 (mysql-8.0.25 ndb-8.0.24)
[mysqld(API)] 2 node(s)
id=4 @10.0.10.10 (mysql-8.0.25 ndb-8.0.24)
id=5 (not connected, accepting connect from any host)
標準のMySQL8.0バージョンと互換性があります。多くの標準MySQLモードおよびアプリケーションはNDBクラスターを使用できますが、NDBクラスターで実行する場合、変更されていないアプリケーションおよびデータベースモードでは、わずかな非互換性またはパフォーマンスの低下が生じる可能性があります(23.1.7既知のNDBクラスターの制限を参照)。これらの問題のほとんどは克服できますが、既存のアプリケーションデータストア(たとえば、現在使用中のデータストア)を切り替える可能性が低いこと、MyISAM
またはInnoDB
許可されていないモードであるNDBストレージエンジンを使用することも意味します。、クエリ、およびアプリケーションが変更されました。コンパイル時にNDBでサポートされていない(つまり-DWITH_NDBCLUSTER_STORAGE_ENGINE
、コンパイル時-DWITH_NDBCLUSTER
に使用されていない、またはそのエイリアスである)mysqldは、それを使用して構築されたmysqldの代わりに使用することはできません。
NDBクラスターオープンソースツリー。https://github.com/mysql/mysql-serverからNDBクラスター開発ツリーにアクセスすることもできます。
https://github.com/mysql/mysql-serverで管理されているNDBクラスター開発ソースはGPLの下でライセンスされています。Gitを使用してMySQLソースコードを取得し、自分でビルドする方法については、2.9.5開発ソースツリーからのMySQLのインストールを参照してください。
注
MySQLServer 8.0と同様に、NDB Cluster8.0もCMakeを使用して構築されています。
NDB Cluster 8.0は、NDB 8.0.19以降の汎用バージョンとしてリリースされており、新しい展開に推奨されます。NDB Cluster 7.6および7.5は以前のGAバージョンであり、本番環境でも引き続きサポートされています。NDBCluster7.6の詳細については、NDB Cluster7.6の新機能を参照してください。NDB Cluster 7.5の同様の情報については、NDB Cluster7.5の新機能を参照してください。NDBクラスター7.4および7.3は以前のGAバージョンであり、本番環境でも引き続きサポートされますが、本番環境での新しいデプロイメントではNDBクラスター8.0を使用することをお勧めします。MySQLNDBクラスター7.3およびNDBクラスター7.4を参照してください。
新たに開発されたNDBクラスターの継続的な開発に伴い、この章の内容は継続的に改訂される可能性があります。NDBクラスターの詳細については、MySQLWebサイトhttp://www.mysql.com/products/cluster/を参照してください。
その他のリソース。NDBクラスターの詳細については、次の場所を参照してください。
- NDBクラスターに関するいくつかの一般的な質問への回答については、A.10 MySQL 8.0 FAQ:NDBクラスターを参照してください。
- NDBクラスターフォーラム:https://forums.mysql.com/list.php?25。
- 多くのNDBクラスターのユーザーと開発者がブログでNDBクラスターの使用経験について話し、PlanetMySQLを通じてこれらのコンテンツの概要を提供しました。