mysqlcluster mysqlクラスタ構成

5964 ワード

管理ノードこのノードの役割は、NDBクラスタ内の他のノードを管理することであり、例えば、構成データの提供、ノードの起動と停止、バックアップの実行などの機能を提供する.このノードタイプは、他のノードの構成を管理するため、まず他のノードの前にこのタイプのノードを起動する必要があります.コマンドndb_の使用mgmdはMGMノードデータノードを起動するこのタイプのノードはクラスタデータSQLノードを格納するこれはクラスタデータにアクセスするノードであり、mysqldサービスプロセスの下に4台のサーバipで192.168.8.129-192.168.8.8132で次のノードに従って対応するipを設定する必要がある.
ノードSQLノード192.168.43.207外部クライアントにAPI(PHP mysql client python...)データノードデータストレージ192.168.43.208 192.168.43.209管理ノード協調スケジューリング192.168.43.210
mysqlを以前にインストールする場合は、/usr/local/mysql/etc/myなどの対応するファイルを削除する必要があります.cnf/etc/init.d/mysql*/etc/rc.d/init.d/mysql*
SQLノード構成表示/etc/passwdおよび/etc/groupファイルにmysqlユーザーとグループがあるかどうかgroupadd mysql useradd-g mysql-s/bin/false mysqlダウンロードmysqlclusterここで/optディレクトリにダウンロードする例cd/opt wgetについて説明しますhttps://dev.mysql.com/get/Downloads/MySQL-Cluster-7.6/mysql-cluster-gpl-7.6.8-linux-glibc2.12-x86_64.tar.gz次にtar zxvf mysql-cluster-gpl-7.6.8-linux-glibc 2を解凍する.12-x86_64.tar.gzは、/optディレクトリで実行する解凍操作が/usr/local/mysql ln-s/opt/mysql-cluster-gpl-7.6.8-linux-glibc 2にシンボルリンクを作成すると仮定する.12-x86_64/usr/local/mysql cd/usr/local/mysql/bin/初期化mysql実行./mysqld--initialize実行後、ランダムパスワードを覚えてmysqlディレクトリの所有者とグループをmysql cd/usr/localに変更してchown-R mysql:mysql mysql/設定起動cp mysql/support-files/mysql.server/etc/rc.d/init.d/mysql.serverは実行可能権限chmod+x/etc/rcを付与.d/init.d/mysql.server chkconfig --add mysql.server起動/etc/rc.d/init.d/mysql.server start mysql/usr/local/mysql/bin/mysql-uroot-pデータベースパスワード登録後mysqlパスワードuse mysql ALTER USER‘root’@‘localhost’IDENTIFIED WITH mysql_native_password BY「新しいパスワード」;その後、使用可能な新しいパスワードのログインを終了しmysql/etc/rcを停止します.d/init.d/mysql.server stopはまだsqlノードのいくつかの構成情報を設定していないため
データノードは、ndbdとndbmtdの2つのファイルを/usr/local/binディレクトリにコピーする必要があります.この2つのファイルを他のサーバからコピーする必要があります.次は、cp bin/ndbd/usr/local/bin/ndbd cp bin/ndbmtd/usr/local/bin/ndbmtdを参照するコマンドです.また、scp-P 2233などの他のマシンからリモートコピーすることもできます[email protected]:/usr/local/mysql/bin/ndbmtd ./次のコードを実行します:[email protected]:/usr/local/mysql/bin/ndbmtd ./scp [email protected]:/usr/local/mysql/bin/ndbd ./この2つのファイルに実行可能な権限がない場合は、x権限cd/usr/local/bin chmod+x ndb*を与える必要があります.
データストアディレクトリmkdir-p/usr/local/mysql/dataの作成上記ディレクトリは、管理ノードで構成されているDATAdirと一致する必要がありますchown-R mysql:mysql/usr/local/mysql/
管理ノードにはndb_のインストールが必要ですmgmdとndb_mgmは、上記のようにコピーして実行可能な権限を付与することができる
各ノード構成https://dev.mysql.com/doc/refman/5.7/en/mysql-cluster-install-configuration.html
データノードとSQLノードにはvi/etc/myが必要です.cnfは以下のように構成される
[mysqld]
# Options for mysqld process:
ndbcluster                      # run NDB storage engine

[mysql_cluster]
# Options for NDB Cluster processes:
ndb-connectstring=198.51.100.10  # location of management server

管理ノードmkdir/var/lib/mysql-cluster cd/var/lib/mysql-cluster vi config.ini
[ndbd default]
# Options affecting ndbd processes on all data nodes:
NoOfReplicas=2    # Number of replicas
DataMemory=80M    # How much memory to allocate for data storage
IndexMemory=18M   # How much memory to allocate for index storage
                  # For DataMemory and IndexMemory, we have used the
                  # default values. Since the "world" database takes up
                  # only about 500KB, this should be more than enough for
                  # this example NDB Cluster setup.
ServerPort=2202   # This the default value; however, you can use any
                  # port that is free for all the hosts in the cluster
                  # Note1: It is recommended that you do not specify the port
                  # number at all and simply allow the default value to be used
                  # instead
                  # Note2: The port was formerly specified using the PortNumber 
                  # TCP parameter; this parameter is no longer available in NDB
                  # Cluster 7.5.

[ndb_mgmd]
# Management process options:
HostName=192.168.43.210          # Hostname or IP address of MGM node
DataDir=/var/lib/mysql-cluster  # Directory for MGM node log files

[ndbd]
# Options for data node "A":
                                # (one [ndbd] section per data node)
HostName=192.168.43.208          # Hostname or IP address
NodeId=2                        # Node ID for this data node
DataDir=/usr/local/mysql/data   # Directory for this data node's data files

[ndbd]
# Options for data node "B":
HostName=192.168.43.209          # Hostname or IP address
NodeId=3                        # Node ID for this data node
DataDir=/usr/local/mysql/data   # Directory for this data node's data files

[mysqld]
# SQL node options:
HostName=192.168.43.207          # Hostname or IP address
                                # (additional mysqld connections can be
                                # specified for this node for various
                                # purposes such as running ndb_restore)

テスト管理ノードでndb_を先に実行mgmd -f/var/lib/mysql-cluster/config.iniプロファイルまたはディレクトリが見つからない場合config.iniプロンプトのデフォルトディレクトリにコピーすれば、エラーが報告されていない場合は1186ポートがあるかどうかを確認し、ndb_がある場合はmgmがクライアントコマンドラインに入るshow各ノードの状態を確認するときデータノードsqlノードが起動していないのはすべて未接続状態であるべき起動データノードは各データノードでndbdを実行してsqlノードで/etc/rcを実行する.d/init.d/mysql.server start mysqldサービスを開始
クライアントはsqlノードに接続してデータ操作を行うことができます
クラスタを閉じて管理ノードでndb_を実行mgm-e shutdownは管理ノードおよびデータノードを閉じることができます
sqlノードは、通常mysqlサービスを閉じるように/etc/rcを閉じることができる.d/init.d/mysql.server stop
----よくあるエラー1.SQLノードMySQLサービスが開始できません(1)mysqlを以前インストールした場合は/usr/local/mysql/etc/myなどのファイルを削除する必要があります.cnf/etc/init.d/mysql*/etc/rc.d/init.d/mysql*(2)cluster圧縮ファイル解凍後にシンボルリンクをしてls-l/usr/local解凍が正しく接続されているかどうかを確認/rootディレクトリに解凍しない(仮想ホストの作成時も避ける)(3)設定/usr/local/mysqlディレクトリおよびサブディレクトリのユーザーとグループがmysql(./mysqld--initializeコマンドの後にもう一度設定する必要があります)(4)管理ノードで設定されたipとSQLノードのipが一致しない(5)エラーログ/usr/local/data/***を検索する.Err errorオプションを検索してさらに調べる
2.起動順管理ノードを起動するデータノードを起動し、最後にSQLノードを起動するデータノード記憶データのディレクトリは/usr/local/mysql/dataで初期状態データ記憶ディレクトリが空であることを保証する.DDBCLUSTERストレージエンジンを使用する必要があります他のストレージエンジンを使用する場合はalter tableを使用してストレージエンジンを変更する必要があります