MySQLマルチインスタンスとは
MySQL 複数インスタンスの利点と欠点:1. サーバー リソースを有効活用: 1 台のサーバーに余裕のあるリソースがある場合、残りのリソースを最大限に活用して、より多くの MySQL インスタンスを作成し、より多くのサービスを提供できます。 2. サーバー リソースを節約: 企業が資金不足であるが、複数のデータベースが必要で、それぞれが可能な限り独立してサービスを提供する必要がある、またはマスターとスレーブの同期が必要な場合は、MySQL の複数のインスタンスが最適です。 3. リソース競合の問題: サービス インスタンスの同時実行性が高い場合やクエリが遅い場合、インスタンス全体がメモリ、CPU、ディスク、および IO リソースをより多く消費し、サーバー上の他のインスタンスが提供するサービスの品質が低下します。これは、家の中の異なる寝室 (MySQL インスタンス) にいる人々がトイレ (ハードウェア CPU、メモリ、およびディスク IO リソース) に行く必要があり、1 人がトイレを占有し、他の全員が待たなければならない場合と同じです。 MySQL マルチインスタンス インストール ガイド:詳細については公式サイト(https://dev.mysql.com/doc/refman/5.7/en/installing.html)を参照してください。
環境を準備します。 [root@mysql-multi ~]# cat /etc/redhat-release CentOS Linux リリース 7.5.1804 (コア) [root@mysql-multi ~]# uname -r 3.10.0-862.el7.x86_64 [root@mysql-multi ~]# ホスト名 -I 172.16.70.37 [root@mysql-multi ~]# getenforce 寛容な [root@mysql-multi ~]# systemctl ステータス ファイアウォールd ● firewalld.service - firewalld - 動的ファイアウォールデーモン ロード済み: ロード済み (/usr/lib/systemd/system/firewalld.service; 無効; ベンダープリセット: 有効) アクティブ: 非アクティブ (デッド) ドキュメント: man:firewalld(1) 7月23日 14:36:11 mysql-multi systemd[1]: 動的ファイアウォールデーモンであるfirewalldを起動しています... 7月23日 14:36:12 mysql-multi systemd[1]: 動的ファイアウォールデーモンであるfirewalldを起動しました。 7月23日 15:09:10 mysql-multi systemd[1]: 動的ファイアウォールデーモンであるfirewalldを停止しています... 7月23日 15:09:11 mysql-multi systemd[1]: 動的ファイアウォールデーモンであるfirewalldを停止しました。 # CentOS 7 バージョンのシステムにはデフォルトで MariaDB がインストールされているので、まずこれをクリーンアップする必要があります [root@mysql-multi ~]# rpm -qa |grep mariadb mariadb-libs-5.5.56-2.el7.x86_64 または [root@mysql-multi ~]# yum list installed | grep mariadb mariadb-libs.x86_64 1:5.5.56-2.el7 @アナコンダ # アンインストール [root@mysql-multi ~]# rpm -e --nodeps mariadb-libs-5.5.56-2.el7.x86_64 または [root@mysql-multi ~]# yum -y remove mariadb-libs.x86_64 MySQLの複数インスタンスをインストールして設定するYUM ソースのインストール方法は次のとおりです。 公式 Web サイト (https://downloads.mysql.com/archives/community) から rpm パッケージをダウンロードし、適切なバージョンのダウンロードを選択します。 # rpm パッケージをサーバーにアップロードします [root@mysql-multi ~]# yum install libaio lrzsz tree net-tools -y [root@mysql-multi ~]# ls mysql-community-client-5.7.34-1.el7.x86_64.rpm mysql-community-libs-5.7.34-1.el7.x86_64.rpm mysql-community-common-5.7.34-1.el7.x86_64.rpm mysql-community-server-5.7.34-1.el7.x86_64.rpm # インストール操作は [root@mysql-multi ~]# rpm -ivh mysql-community-common-5.7.34-1.el7.x86_64.rpm の順番で実行する必要があります [root@mysql-multi ~]# rpm -ivh mysql-community-libs-5.7.34-1.el7.x86_64.rpm [root@mysql-multi ~]# rpm -ivh mysql-community-client-5.7.34-1.el7.x86_64.rpm [root@mysql-multi ~]# rpm -ivh mysql-community-server-5.7.34-1.el7.x86_64.rpm [root@mysql-multi ~]# yum list インストール済み | grep mysql mysql-community-client.x86_64 5.7.34-1.el7 がインストール済み mysql-community-common.x86_64 5.7.34-1.el7 がインストール済み mysql-community-libs.x86_64 5.7.34-1.el7 がインストール済み mysql-community-server.x86_64 5.7.34-1.el7 がインストール済み # インスタンスディレクトリを作成 [root@mysql-multi ~]# mkdir -p /data/app/mysql/{3306,3307} [root@mysql-multi ~]# mkdir -p /data/app/mysql/3306/{data,binlog,logs} [root@mysql-multi ~]# mkdir -p /data/app/mysql/3307/{data,binlog,logs} [root@mysql-multi ~]# ツリー /data/app/mysql/ /データ/アプリ/mysql/ ├── 3306 │ ├── バイナリログ │ ├── データ │ └── ログ └── 3307 ├── バイナリログ ├── データ └── ログ # ディレクトリ所有者グループを設定する [root@mysql-multi ~]# chown -R mysql:mysql /data/app/mysql [root@mysql-multi ~]# ls -ld /data/app/mysql drwxr-xr-x. 4 mysql mysql 30 7月 29 18:39 /data/app/mysql [root@mysql-multi ~]# ls -ld /data/app drwxr-xr-x. 3 ルート ルート 19 7月 29 18:39 /data/app # 新しい設定ファイル my3306.cnf を追加します [root@mysql-multi ~]# mv /etc/my.cnf /etc/my.cnf_bak [root@mysql-multi ~]# cat /etc/my3306.cnf [mysqld] ユーザー = mysql ポート = 3306 サーバーID = 3306 データディレクトリ = /data/app/mysql/3306/data ソケット = /data/app/mysql/3306/mysql3306.sock シンボリックリンク = 0 ログエラー = /data/app/mysql/3306/logs/mysqld3306.log pid ファイル = /data/app/mysql/3306/mysqld3306.pid # 新しい設定ファイル my3307.cnf を追加します [root@mysql-multi ~]# cp /etc/my3306.cnf /etc/my3307.cnf [root@mysql-multi ~]# sed -i 's/3306/3307/g' /etc/my3307.cnf [root@mysql-multi ~]# cat /etc/my3307.cnf [mysqld] ユーザー = mysql ポート = 3307 サーバーID = 3307 データディレクトリ = /data/app/mysql/3307/data ソケット = /data/app/mysql/3307/mysql3307.sock シンボリックリンク = 0 ログエラー = /data/app/mysql/3307/logs/mysqld3307.log pid ファイル = /data/app/mysql/3307/mysqld3307.pid # mysql 起動サービス ファイルをバックアップします [root@mysql-multi ~]# mv /usr/lib/systemd/system/mysqld.service /usr/lib/systemd/system/mysqld.service_bak # mysqld3306.service スタートアップファイルを追加します [root@mysql-multi ~]# cat /usr/lib/systemd/system/mysqld3306.service [ユニット] 説明=MySQL サーバー ドキュメント=man:mysqld(8) ドキュメント=http://dev.mysql.com/doc/refman/en/using-systemd.html 後=ネットワーク.ターゲット 後=syslog.target [インストール] WantedBy=マルチユーザー.ターゲット [サービス] ユーザー=mysql グループ=mysql タイプ=フォーク PIDファイル=/data/app/mysql/3306/mysqld3306.pid タイムアウト秒数=0 権限開始のみ=true #ExecStartPre=/usr/bin/mysqld_pre_systemd_3306 3306 ExecStart=/usr/sbin/mysqld --defaults-file=/etc/my3306.cnf --daemonize --pid-file=/data/app/mysql/3306/mysqld3306.pid $MYSQLD_OPTS 環境ファイル=-/etc/sysconfig/mysql 制限NOFILE = 5000 再起動=失敗時 再起動防止終了ステータス=1 プライベートTmp=偽 # mysqld3307.service スタートアップファイルを追加します [root@mysql-multi ~]# cp /usr/lib/systemd/system/mysqld3306.service /usr/lib/systemd/system/mysqld3307.service [root@mysql-multi ~]# sed -i 's/3306/3307/g' /usr/lib/systemd/system/mysqld3307.service [root@mysql-multi ~]# cat /usr/lib/systemd/system/mysqld3307.service [ユニット] 説明=MySQL サーバー ドキュメント=man:mysqld(8) ドキュメント=http://dev.mysql.com/doc/refman/en/using-systemd.html 後=ネットワーク.ターゲット 後=syslog.target [インストール] WantedBy=マルチユーザー.ターゲット [サービス] ユーザー=mysql グループ=mysql タイプ=フォーク PIDファイル=/data/app/mysql/3307/mysqld3307.pid タイムアウト秒数=0 権限開始のみ=true #ExecStartPre=/usr/bin/mysqld_pre_systemd_3307 3307 ExecStart=/usr/sbin/mysqld --defaults-file=/etc/my3307.cnf --daemonize --pid-file=/data/app/mysql/3307/mysqld3307.pid $MYSQLD_OPTS 環境ファイル=-/etc/sysconfig/mysql 制限NOFILE = 5000 再起動=失敗時 再起動防止終了ステータス=1 プライベートTmp=偽 # 複数のインスタンスを初期化する 3306, 3307 [root@mysql-multi ~]# mysqld --defaults-file=/etc/my3306.cnf --initialize --user=mysql --datadir=/data/app/mysql/3306/data [root@mysql-multi ~]# mysqld --defaults-file=/etc/my3307.cnf --initialize --user=mysql --datadir=/data/app/mysql/3307/data # 複数のインスタンスを起動 3306, 3307 [root@mysql-multi ~]# systemctl start mysqld3306 [root@mysql-multi ~]# systemctl start mysqld3307 [root@mysql-multi ~]# netstat -nutpl | grep mysql tcp6 0 0 :::3306 :::* LISTEN 128270/mysqld tcp6 0 0 :::3307 :::* 128328/mysqldを聴く [root@mysql-multi ~]# ps -ef | grep mysql mysql 128270 1 1 11:43 ? 00:00:00 /usr/sbin/mysqld --defaults-file=/etc/my3306.cnf --daemonize --pid-file=/data/app/mysql/3306/mysqld3306.pid mysql 128328 1 1 11:43 ? 00:00:00 /usr/sbin/mysqld --defaults-file=/etc/my3307.cnf --daemonize --pid-file=/data/app/mysql/3307/mysqld3307.pid ルート 128373 949 0 11:43 pts/0 00:00:00 grep --color=auto mysql ============================================= 【MySQLインスタンスをもう一つ追加】======================================================================== # ディレクトリを作成し、所有者とグループを設定します [root@mysql-multi ~]# mkdir -p /data/app/mysql/3308/{data,binlog,logs} [root@mysql-multi ~]# chown -R mysql:mysql /data/app/mysql/3308 [root@mysql-multi ~]# ls -ld /data/app/mysql/3308 drwxr-xr-x. 5 mysql mysql 44 8月5日 14:45 /data/app/mysql/3308 # 新しい設定ファイル my3308.cnf を追加します [root@mysql-multi ~]# cp /etc/my3306.cnf /etc/my3308.cnf [root@mysql-multi ~]# sed -i 's/3306/3308/g' /etc/my3308.cnf [root@mysql-multi ~]# cat /etc/my3308.cnf [mysqld] ユーザー = mysql ポート = 3308 サーバーID = 3308 データディレクトリ = /data/app/mysql/3308/data ソケット = /data/app/mysql/3308/mysql3308.sock シンボリックリンク = 0 ログエラー = /data/app/mysql/3308/logs/mysqld3308.log pid ファイル = /data/app/mysql/3308/mysqld3308.pid # mysqld3308.service スタートアップファイルを追加します [root@mysql-multi ~]# cp /usr/lib/systemd/system/mysqld3306.service /usr/lib/systemd/system/mysqld3308.service [root@mysql-multi ~]# sed -i 's/3306/3308/g' /usr/lib/systemd/system/mysqld3308.service [root@mysql-multi ~]# cat /usr/lib/systemd/system/mysqld3308.service [ユニット] 説明=MySQL サーバー 3308 ドキュメント=man:mysqld(8) ドキュメント=http://dev.mysql.com/doc/refman/en/using-systemd.html 後=ネットワーク.ターゲット 後=syslog.target [インストール] WantedBy=マルチユーザー.ターゲット [サービス] ユーザー=mysql グループ=mysql タイプ=フォーク PIDファイル=/data/app/mysql/3308/mysqld3308.pid タイムアウト秒数=0 権限開始のみ=true #ExecStartPre=/usr/bin/mysqld_pre_systemd_3308 3308 ExecStart=/usr/sbin/mysqld --defaults-file=/etc/my3308.cnf --daemonize --pid-file=/data/app/mysql/3308/mysqld3308.pid $MYSQLD_OPTS 環境ファイル=-/etc/sysconfig/mysql 制限NOFILE = 5000 再起動=失敗時 再起動防止終了ステータス=1 プライベートTmp=偽 # 複数のインスタンスを初期化する 3308 [root@mysql-multi ~]# mysqld --defaults-file=/etc/my3308.cnf --initialize --user=mysql --datadir=/data/app/mysql/3308/data # 複数のインスタンスを起動する 3308 [root@mysql-multi ~]# systemctl start mysqld3308 [root@mysql-multi ~]# netstat -nutpl | grep mysql tcp6 0 0 :::3306 :::* 5062/mysqldを聴く tcp6 0 0 :::3307 :::* 5098/mysqldを聴く tcp6 0 0 :::3308 :::* 5189/mysqldを聴く [root@mysql-multi ~]# ps -ef |grep mysql mysql 5062 1 0 14:43 ? 00:00:01 /usr/sbin/mysqld --defaults-file=/etc/my3306.cnf --daemonize --pid-file=/data/app/mysql/3306/mysqld3306.pid mysql 5098 1 0 14:44 ? 00:00:01 /usr/sbin/mysqld --defaults-file=/etc/my3307.cnf --daemonize --pid-file=/data/app/mysql/3307/mysqld3307.pid mysql 5189 1 4 14:57 ? 00:00:01 /usr/sbin/mysqld --defaults-file=/etc/my3308.cnf --daemonize --pid-file=/data/app/mysql/3308/mysqld3308.pid ソースコードのコンパイルとインストール方法は次のとおりです。 MySQL ダウンロード: https://downloads.mysql.com/archives/community Boost ダウンロード: https://sourceforge.net/projects/boost/files/boost/1.59.0 MySQL の複数のインスタンス: https://dev.mysql.com/doc/refman/5.7/en/multiple-servers.html # 依存パッケージとコンパイルソフトウェア [root@mysql-multi ~]# yum install -y cmake make gcc gcc-c++ openssl openssl-devel ncurses ncurses-devel libaio-devel wget lrzsz tree [root@mysql-multi ~]# rpm -qa ncurses-devel libaio-devel libaio-devel-0.3.109-13.el7.x86_64 ncurses-devel-5.9-14.20130511.el7_4.x86_64 # ソースコード パッケージをダウンロードしてアップロードし、解凍してコンパイルし、インストールします (メモリが 8G 以上あることが推奨されます) ls[root@mysql-multi ~]# ls boost_1_59_0.tar.gz mysql-boost-5.7.34.tar.gz [root@mysql-multi ~]# tar xf boost_1_59_0.tar.gz [root@mysql-multi ~]# tar xf mysql-boost-5.7.34.tar.gz [root@mysql-multi ~]# ls boost_1_59_0 boost_1_59_0.tar.gz mysql-5.7.34 mysql-boost-5.7.34.tar.gz [root@mysql-multi ~]# cd mysql-5.7.34/ [root@mysql-multi mysql-5.7.34]# cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DDEFAULT_CHARSET=utf8mb4 \ -DENABLED_LOCAL_INFILE=1 -DWITH_SYSTEMD=1 -DWITH_BOOST=/root/boost_1_59_0 -DEXTRA_CHARSETS=すべて ...... ......最後に以下が表示されれば完了です-- CMAKE_SHARED_LINKER_FLAGS -- 設定完了 -- 生成完了 -- ビルド ファイルは /root/mysql-5.7.34 に書き込まれました オプションの説明: -DCMAKE_INSTALL_PREFIX=/usr/local/mysql # mysql インストール ディレクトリ -DDEFAULT_CHARSET=utf8mb4 # データベースのデフォルトの文字エンコード -DENABLED_LOCAL_INFILE=1 # このファイルからのデータのインポートを許可する -DWITH_SYSTEMD=1 # systemd スクリプトを提供する -DWITH_BOOST=/root/boost_1_59_0 # boost ソース パス -DEXTRA_CHARSETS=all # すべての文字セットをインストールする [root@mysql-multi mysql-5.7.34]#make -j 4 && make install # make -j 4 は CPU4 コアを同時にコンパイルすることを意味します: cat /proc/cpuinfo|grep "processor"|wc -l ...... ......最後に以下の内容が表示されれば完了です-- Up-to-date: /usr/local/app/mysql/mysql-test/mysql-test-run -- インストール中: /usr/local/app/mysql/mysql-test/lib/My/SafeProcess/my_safe_process -- 最新: /usr/local/app/mysql/mysql-test/lib/My/SafeProcess/my_safe_process -- インストール中: /usr/local/app/mysql/mysql-test/lib/My/SafeProcess/Base.pm -- インストール中: /usr/local/app/mysql/support-files/mysqld_multi.server -- インストール中: /usr/local/app/mysql/support-files/mysql-log-rotate -- インストール中: /usr/local/app/mysql/support-files/magic -- インストール中: /usr/local/app/mysql/share/aclocal/mysql.m4 -- インストール中: /usr/local/app/mysql/support-files/mysql.server # インスタンスディレクトリを作成 [root@mysql-multi ~]# mkdir -p /data/app/mysql/{3306,3307}/{data,binlog,logs} [root@mysql-multi ~]# ツリー /data/app/mysql /データ/アプリ/mysql ├── 3306 │ ├── バイナリログ │ ├── データ │ └── ログ └── 3307 ├── バイナリログ ├── データ └── ログ # ユーザーを作成し、ディレクトリ所有者グループを設定します [root@mysql-multi ~]# useradd -M -r -s /sbin/nologin mysql [root@mysql-multi ~]# chown -R mysql:mysql /data/app/mysql [root@mysql-multi ~]# ls -ld /data/app/mysql drwxr-xr-x. 4 mysql mysql 30 Aug 5 12:17 /data/app/mysql # 新しい設定ファイル my3306.cnf を追加します [root@mysql-multi ~]# mv /etc/my.cnf /etc/my.cnf_bak [root@mysql-multi ~]# cat /etc/my3306.cnf [mysqld] ユーザー = mysql ポート = 3306 サーバーID = 3306 ベースディレクトリ = /usr/local/mysql データディレクトリ = /data/app/mysql/3306/data ソケット = /data/app/mysql/3306/mysql3306.sock シンボリックリンク = 0 ログエラー = /data/app/mysql/3306/logs/mysqld3306.log pid ファイル = /data/app/mysql/3306/mysqld3306.pid 文字セットサーバー = utf8 デフォルトのストレージエンジン = INNODB # 新しい設定ファイル my3307.cnf を追加します [root@mysql-multi ~]# cp /etc/my3306.cnf /etc/my3307.cnf [root@mysql-multi ~]# sed -i 's/3306/3307/g' /etc/my3307.cnf [root@mysql-multi ~]# cat /etc/my3307.cnf [mysqld] ユーザー = mysql ポート = 3307 サーバーID = 3307 ベースディレクトリ = /usr/local/mysql データディレクトリ = /data/app/mysql/3307/data ソケット = /data/app/mysql/3307/mysql3307.sock シンボリックリンク = 0 ログエラー = /data/app/mysql/3307/logs/mysqld3307.log pid ファイル = /data/app/mysql/3307/mysqld3307.pid 文字セットサーバー = utf8 デフォルトのストレージエンジン = INNODB # インストール後の標準化操作(環境変数の設定、ヘッダーファイルとライブラリファイルの出力、manパスの設定) [root@mysql-multi ~]# echo "export PATH=/usr/local/mysql/bin:$PATH" >> /etc/profile.d/mysql.sh [root@mysql-multi ~]# chmod +x /etc/profile.d/mysql.sh [root@mysql-multi ~]# ソース /etc/profile.d/mysql.sh [root@mysql-multi ~]# echo "MANPATH /usr/local/mysql/man" >> /etc/man.config [root@mysql-multi ~]# echo "/usr/local/mysql/lib" > /etc/ld.so.conf.d/mysql.conf [root@mysql-multi ~]# ldconfig [root@mysql-multi ~]# ln -s /usr/local/mysql/include /usr/include/mysql # systemd モードでインスタンス 3306 と 3307 を追加します [root@mysql-multi ~]# cat /usr/lib/systemd/system/mysqld3306.service [ユニット] 説明=MySQL サーバー ドキュメント=man:mysqld(8) ドキュメント=http://dev.mysql.com/doc/refman/en/using-systemd.html 後=ネットワーク.ターゲット 後=syslog.target [インストール] WantedBy=マルチユーザー.ターゲット [サービス] ユーザー=mysql グループ=mysql タイプ=フォーク PIDファイル=/data/app/mysql/3306/mysqld3306.pid タイムアウト秒数=0 権限開始のみ=true #ExecStartPre=/usr/bin/mysqld_pre_systemd_3306 3306 ExecStart=/usr/local/mysql/bin/mysqld --defaults-file=/etc/my3306.cnf --daemonize --pid-file=/data/app/mysql/3306/mysqld3306.pid $MYSQLD_OPTS 環境ファイル=-/etc/sysconfig/mysql 制限NOFILE = 5000 再起動=失敗時 再起動防止終了ステータス=1 プライベートTmp=偽 [root@mysql-multi ~]# cp /usr/lib/systemd/system/mysqld3306.service /usr/lib/systemd/system/mysqld3307.service [root@mysql-multi ~]# sed -i 's/3306/3307/g' /usr/lib/systemd/system/mysqld3307.service [root@mysql-multi ~]# cat /usr/lib/systemd/system/mysqld3307.service [ユニット] 説明=MySQL サーバー ドキュメント=man:mysqld(8) ドキュメント=http://dev.mysql.com/doc/refman/en/using-systemd.html 後=ネットワーク.ターゲット 後=syslog.target [インストール] WantedBy=マルチユーザー.ターゲット [サービス] ユーザー=mysql グループ=mysql タイプ=フォーク PIDファイル=/data/app/mysql/3307/mysqld3307.pid タイムアウト秒数=0 権限開始のみ=true #ExecStartPre=/usr/bin/mysqld_pre_systemd_3307 3307 ExecStart=/usr/local/mysql/bin/mysqld --defaults-file=/etc/my3307.cnf --daemonize --pid-file=/data/app/mysql/3307/mysqld3307.pid $MYSQLD_OPTS 環境ファイル=-/etc/sysconfig/mysql 制限NOFILE = 5000 再起動=失敗時 再起動防止終了ステータス=1 プライベートTmp=偽 # インスタンス 3306、3307 を初期化します [root@mysql-multi ~]# /usr/local/mysql/bin/mysqld --defaults-file=/etc/my3306.cnf --initialize --basedir=/usr/local/mysql --user=mysql --datadir=/data/app/mysql/3306/data [root@mysql-multi ~]# /usr/local/mysql/bin/mysqld --defaults-file=/etc/my3307.cnf --initialize --basedir=/usr/local/mysql --user=mysql --datadir=/data/app/mysql/3307/data # インスタンス 3306、3307 サービスを開始します (start|stop|restart|status) [root@mysql-multi ~]# systemctl start mysqld3306 [root@mysql-multi ~]# systemctl start mysqld3307 [root@mysql-multi ~]# netstat -nuptl | grep mysql tcp6 0 0 :::3306 :::* LISTEN 27165/mysqld tcp6 0 0 :::3307 :::* 27201/mysqldを聴く [root@mysql-multi ~]# ps -ef | grep mysql mysql 27165 1 2 17:03 ? 00:00:00 /usr/local/mysql/bin/mysqld --defaults-file=/etc/my3306.cnf --daemonize --pid-file=/data/app/mysql/3306/mysqld3306.pid mysql 27201 1 2 17:03 ? 00:00:00 /usr/local/mysql/bin/mysqld --defaults-file=/etc/my3307.cnf --daemonize --pid-file=/data/app/mysql/3307/mysqld3307.pid MySQL インスタンスのパスワードを変更し、ログインをテストします。 # インスタンスの初期パスワードを取得します [root@mysql-multi ~]# grep 'temporary password' /data/app/mysql/3306/logs/mysqld3306.log 2021-08-05T08:52:37.904630Z 1 [注記] root@localhost の一時パスワードが生成されます: ,&YrsLryq3Ll [root@mysql-multi ~]# grep '一時パスワード' /data/app/mysql/3307/logs/mysqld3307.log 2021-08-05T08:52:48.082526Z 1 [注] root@localhost の一時パスワードが生成されます: OvxKu,su=4O1 # インスタンスのパスワードを変更する [root@mysql-multi ~]# mysqladmin -p -S /data/app/mysql/3306/mysql3306.sock password パスワードを入力してください: # 初期パスワードを入力してください 新しいパスワード: # 新しいパスワードを入力してください 123456 新しいパスワードの確認: # 新しいパスワード 123456 をもう一度入力してください -------------------------------------------------------------------------------------- # またはシェル> mysql -uroot -p /data/app/mysql/3306/mysql3306.sock mysql> ALTER USER 'root'@'localhost' が '123456' によって識別されます。 -------------------------------------------------------------------------------------- [root@mysql-multi ~]# mysqladmin -p -S /data/app/mysql/3306/mysql3307.sock パスワード パスワードを入力してください: # 初期パスワードを入力してください 新しいパスワード: # 新しいパスワード 654321 を入力してください 新しいパスワードの確認: # 新しいパスワード 654321 をもう一度入力してください # ログインをテストする [root@mysql-multi ~]# mysql -uroot -p -S /data/app/mysql/3306/mysql3306.sock パスワードを入力してください: # パスワード 123456 を入力してください [root@mysql-multi ~]# mysql -uroot -p -S /data/app/mysql/3307/mysql3307.sock パスワードを入力してください: # パスワード 654321 を入力してください # インスタンスを停止します [root@mysql-multi ~]# mysqladmin -uroot -p -S /data/app/mysql/3306/mysql3306.sock シャットダウン パスワードを入力してください: # パスワード 123456 を入力してください [root@mysql-multi ~]# mysqladmin -uroot -p -S /data/app/mysql/3307/mysql3307.sock シャットダウン パスワードを入力してください: # パスワード 654321 を入力してください この時点で、MySQL の複数インスタンスが実装されました。 Linux での MySQL マルチインスタンス展開記録に関するこの記事はこれで終わりです。MySQL マルチインスタンス展開に関するより関連性の高いコンテンツについては、123WORDPRESS.COM の以前の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。 以下もご興味があるかもしれません:
|
>>: CSS を使用して HTML フォーム コントロールを美しくする詳細な例 (フォームの美化)
次の図に示すように: 仮想マシンと Docker を使用するとき、「なぜ Docker は VM よ...
今日、非常に奇妙な問題に遭遇しました。次のコードを見てください。 SimpleDateFormat ...
まずコードファイルの構造を見てみましょう。エントリファイル (index1.js) の内容: ...
jQuery 入門jQuery ライブラリは、簡単なマークアップ行を使用して Web ページに追加で...
目次1. スワップパーティション SWAP 1.1 スワップファイルを作成する1.2 スワップパーテ...
目次1. 準備2. コマンドラインの記述2.1 バージョンと説明を追加する2.2 パスワードの長さを...
目次1 システムスループットの簡単な紹介2 試験方法2.1 クライアントテストツール2.1.1 GE...
1. pipとは何かpip は、Python パッケージの検索、ダウンロード、インストール、アンイ...
1. ビジネスシナリオの紹介MySQLを使用する電子商取引システムがあるとします。大量のデータを保存...
問題を見つける最近、仕事で問題が発生しました。InnoDB タイプの SQL ファイルを実行すると、...
ここ数日、ウェブサイトを初めて開いたときにアクセスが非常に遅いのですが、その後はページが正常に開きま...
この効果は、2つのブラウザが互いにシミュレートしていることを示しています 1. シミュレートされたノ...
この記事では、以下の環境をテストします。 CentOS 7 64 ビット 最小 MySQL 5.7 ...
原因は、プロセスが特定の時点でシステム制限を超える数のファイルと通信リンクを開くことです。 システム...
序文信じてください。この記事の 7️⃣ ステップを覚えておけば、JS の this リファレンスを完...