記事のディレクトリ
マルチインスタンスインストール
以前は、2つのmysqlを解凍して異なるフォルダーに配置するという非常に低い方法がいくつかありました。実際、mysqlではマルチインスタンスインストールが検討されています。対応するスクリプトコマンドもサポートされています。
ここで、2つのmysqlと1つの3307をインストールする必要があり
ます。3308は次のように新しい/etc/my.cnf構成を作成します。
[mysqld]
sql_mode="STRICT_TRANS_TABLES,NO_ENGINE_SUBSTITUTION,NO_ZERO_DATE,NO_ZERO_IN_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER"
[mysqld_multi]
mysqld = /usr/local/mysql/bin/mysqld_safe
mysqladmin = /usr/local/mysql/bin/mysqladmin
log = /var/log/mysqld_multi.log
user=root
pass=root1234%
[mysqld1]
server-id = 11
socket = /tmp/mysql.sock1
port = 3307
datadir =/data1
user = mysql
performance_schema = off
innodb_buffer_pool_size = 32M
skip_name_resolve = 1
log_error = error.log
pid-file = /data1/mysql.pid1
[mysqld2]
server-id = 12
socket = /tmp/mysql.sock2
port = 3308
datadir = /data2
user = mysql
performance_schema = off
innodb_buffer_pool_size = 32M
skip_name_resolve = 1
log_error = error.log
pid-file = /data2/mysql.pid2
2つのデータディレクトリを作成します
mkdir /data1
mkdir /data2
権限を付与する
chown mysql.mysql /data{
1..2}
mysqld --initialize --user=mysql --datadir=/data1
mysqld --initialize --user=mysql --datadir=/data2
cp /usr/local/mysql/support-files/mysqld_multi.server /etc/init.d/mysqld_multid
起動を構成する
chkconfig mysqld_multid on
ステータスを確認する
mysqld_multi report
このとき、perl環境がまだ必要であることがわかりました。インストールしてください
yum -y install perl perl-devel
実行中であり、すでにインスタンスが存在することがわかりました
mysqld_multi start
開始し、パスワードを個別に変更し、リモート接続を許可します
mysql -u root -S /tmp/mysql.sock1 -p -P3307
mysql -u root -S /tmp/mysql.sock2 -p -P3308
set password = 'root1234%';
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'root1234%';
flush privileges;