ホームページ > データベース > mysql チュートリアル > 複数の mysql データベース構成例の MySQL-Centos インストールの詳細な紹介

複数の mysql データベース構成例の MySQL-Centos インストールの詳細な紹介

黄舟
リリース: 2017-03-11 13:59:00
オリジナル
1774 人が閲覧しました

Linuxオペレーティングシステム: centOS6.5 64ビット(システムデフォルト開発パッケージがインストールされています)

データベース1:
MYSQLバージョン: mysql-5.0.56
ポート:3306
システムディレクトリ:/usr/local/mysql3306
データベース2:
MYSQLバージョン: mysql-5.1.72
ポート:3307

システムディレクトリ:/usr/local/mysql3307

1. 開発パッケージをインストールします(デフォルトのCENTOSアップデートソースを使用します):

<pre name="code" class="plain"># yum -y install wget gcc-c++ ncurses ncurses-devel cmake make perl bison openssl 
openssl-devel gcc* libxml2 libxml2-devel curl-devel libjpeg* libpng* freetype*
ログイン後にコピー

2. iptablesとSELINUXを閉じます

# service iptables stop
# setenforce 0
# vi /etc/sysconfig/selinux
---------------
SELINUX=disabled
ログイン後にコピー

3. mysql データベース インスタンスをインストールします

# su -
# mkdir ~/src
# cd src
# wget //m.sbmmt.com/
# wget //m.sbmmt.com/
ログイン後にコピー

1. コンパイル パッケージをダウンロードします

1) 新しいデータとログ サブディレクトリを作成します。 mysql

# useradd mysql
ログイン後にコピー
3). ディレクトリの所有者とグループの権限を変更します
# mkdir -p /usr/local/mysql{3306,3307}/data          
# mkdir -p /usr/local/mysql{3306,3307}/log
ログイン後にコピー
4)。mysql 関連のディレクトリを作成し、権限を設定します
データベース 1 をコンパイルします:
# chown -R mysql:mysql /usr/local/mysql{3306,3307}/data/
# chown -R mysql:mysql /usr/local/mysql{3306,3307}/log/
# chmod 750 /usr/local/mysql{3306,3307}/data      
# chmod 750 /usr/local/mysql{3306,3307}/log
ログイン後にコピー
データベース 2 をコンパイルします:
# mkdir -p /usr/local/mysql{3306,3307}/etc
# chown -R mysql.mysql /usr/local/mysql{3306,3307}/etc
# mkdir -p /var/run/mysqld{3306,3307}
# chown -R mysql.mysql /var/run/mysqld{3306,3307}
# mkdir -p /var/lib/mysqld{3306,3307}
# chown -R mysql.mysql /var/lib/mysqld{3306,3307}
# cp /etc/my.cnf /usr/local/mysql{3306,3307}/etc
ログイン後にコピー

4. mysql 設定項目を書き込みます:

データベース 1 の設定:
# cd ~/src
# tar -zxvf mysql-5.0.56.tar.gz    
# cd mysql-5.0.56  
./configure --prefix=/usr/local/mysql3306 --with-mysqld-user=mysql --sysconfdir=/usr/local/mysql3306/etc  
--localstatedir=/usr/local/mysql3306/data --with-tcp-port=3306 -enable-assembler --with-mysqld-ldflags=-all-static 
--with-charset=utf8 --with-extra-charsets=utf-8 -with-extra-charsets=all --with-plugins=csv,innobase,myisam,heap 
--with-unix-socket-path=/tmp/mysql3306.sock
# make
# make install
ログイン後にコピー
データベース 2 の設定:
# cd ~/src
# tar -zxvf mysql-5.1.71.tar.gz    
# cd mysql-5.1.71
./configure --prefix=/usr/local/mysql3307 --with-mysqld-user=mysql --sysconfdir=/usr/local/mysql3307/etc  
--localstatedir=/usr/local/mysql3307/data --with-tcp-port=3307 -enable-assembler --with-mysqld-ldflags=-all-static 
--with-charset=utf8 --with-extra-charsets=utf-8 -with-extra-charsets=all --with-plugins=csv,innobase,myisam,heap 
--with-unix-socket-path=/tmp/mysql3307.sock
# make
# make install
ログイン後にコピー

5. mysql ライブラリ ファイルのパスをシステムのライブラリ ファイル検索パスに追加します

方法 1: ソフト リンクを作成します。直接
# vi /usr/local/mysql3306/etc/my.cnf
-------------------------------------------------------
[mysqld]
datadir=/usr/local/mysql3306/data
socket=/tmp/mysql3306.sock
user=mysql
port=3306
pid-file=/var/lib/mysqld3306/mysql.pid
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0
max_connections= 16384
skip-name-resolve
skip-locking
key_buffer = 256M
max_allowed_packet = 32M
table_cache = 3072
thread_cache_size = 256
sort_buffer_size = 16M
read_buffer_size = 4M
read_rnd_buffer_size = 16M
net_buffer_length = 256M
thread_stack = 8M
query_cache_size = 128M
query_cache_limit = 2M
wait_timeout=7200
interactive_timeout=7200
#log
log-error=/usr/local/mysql3306/log/error.log
log=/usr/local/mysql3306/log/mysql.log
long_query_time=2
log-slow-queries= /usr/local/mysql3306/log/slowquery.log
log-bin= /usr/local/mysql3306/log/bin.log
expire_logs_days = 15
sync_binlog = 1
max_binlog_cache_size = 4294967295
local-infile=0
default-storage-engine=INNODB 
[mysqld_safe]
log-error=/var/log/mysqld3306.log
pid-file=/var/run/mysqld3306/mysqld.pid
ログイン後にコピー
方法 2: ldconfig を使用してシステム ライブラリをインポートします
# vi /usr/local/mysql3307/etc/my.cnf
-------------------------------------------------------
[mysqld]
datadir=/usr/local/mysql3307/data
socket=/tmp/mysql3307.sock
user=mysql
port=3307
pid-file=/var/lib/mysqld3307/mysql.pid
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0
max_connections= 16384
skip-name-resolve
skip-locking
key_buffer = 256M
max_allowed_packet = 32M
table_cache = 3072
thread_cache_size = 256
sort_buffer_size = 16M
read_buffer_size = 4M
read_rnd_buffer_size = 16M
net_buffer_length = 256M
thread_stack = 8M
query_cache_size = 128M
query_cache_limit = 2M
wait_timeout=7200
interactive_timeout=7200
#log
log-error=/usr/local/mysql3307/log/error.log
log=/usr/local/mysql3307/log/mysql.log
long_query_time=2
log-slow-queries= /usr/local/mysql3307/log/slowquery.log
log-bin= /usr/local/mysql3307/log/bin.log
expire_logs_days = 15
sync_binlog = 1
max_binlog_cache_size = 4294967295
local-infile=0
default-storage-engine=INNODB
[mysqld_safe]
log-error=/var/log/mysqld3307.log
pid-file=/var/run/mysqld3307/mysqld.pid
-------------------------------------------------------
ログイン後にコピー

6. mysql ヘッダー ファイルをシステム ヘッダー ファイルに出力します

# ln -s /usr/local/mysql3306/lib/mysql /usr/lib/mysql
ログイン後にコピー
注: ここでは、1 つの mysql インスタンスのライブラリ ファイルをシステムに追加するだけです。ライブラリを複数回追加する必要はありません
7. 対応するインスタンスのインストール パスを入力し、それぞれの設定スクリプトを初期化します

データベース 1 の設定:

# echo "/usr/local/mysql3306/lib" >> /etc/ld.so.conf.d/mysql.conf
# ldconfig
ログイン後にコピー

データベース 2 の設定:

# ln -s /usr/local/mysql3306/include/mysql /usr/include/mysql
ログイン後にコピー

8. mysql の起動をコピーします。スクリプトをシステム サービス ディレクトリに追加し、スクリプト構成を変更します

# cd /usr/local/mysql3306
# scripts/mysql_install_db --user=mysql --datadir=/usr/local/mysql3306/data
ログイン後にコピー
データベース 1 の構成:
# cd /usr/local/mysql3307
# scripts/mysql_install_db --user=mysql --datadir=/usr/local/mysql3307/data
ログイン後にコピー
# cp /usr/local/mysql3306/support-files/mysql.server /etc/init.d/mysqld3306
# cp /usr/local/mysql3307/support-files/mysql.server /etc/init.d/mysqld3307
ログイン後にコピー
下の図で赤でマークされたパラメータは追加されたパラメータです:

データベース 2 の構成:

# vi /etc/init.d/mysqld3006
ログイン後にコピー
basedir=/usr/local/mysql3306
datadir=/usr/local/mysql3306/data
conf=/usr/local/mysql3306/etc/my.cnf
$bindir/mysqld_safe --defaults-file=$conf --datadir=$datadir --pid-file=$server_pid_file $other_args >/dev/null 2>&1 &
--------------------------------------------
ログイン後にコピー

下の図で赤でマークされているパラメータは追加されたパラメータです:

9. システムの起動 項目関連の設定

データベース 1 の設定:

# vi /etc/init.d/mysqld3007
ログイン後にコピー

データベース 2 の設定:

basedir=/usr/local/mysql3307
datadir=/usr/local/mysql3307/data
conf=/usr/local/mysql3307/etc/my.cnf
$bindir/mysqld_safe --defaults-file=$conf --datadir=$datadir --pid-file=$server_pid_file $other_args >/dev/null 2>&1 &
--------------------------------------------
ログイン後にコピー

10. mysql

データベース 1 を起動します。起動:
# chkconfig --add mysqld3306  #添加开机启动服务
# chkconfig --level 35 mysqld3306 on  #设置mysql启动
ログイン後にコピー
データベース 2 起動:
# chkconfig --add mysqld3307  
# chkconfig --level 35 mysqld3307 on
ログイン後にコピー

11 mysql コマンド セットをシステム グローバル変数に追加します

注: mysql クライアントが以前にシステムにインストールされていない場合は、コンパイルされた mysql コマンド セットを将来的には、絶対パス アクセスを使用せずに mysql コマンド セットを直接使用できるようになります。
データベース 1:
# service mysqld3306 start
ログイン後にコピー

データベースにログインします。 2 つ:

# service mysqld3307 start
ログイン後にコピー

注: mysql 環境変数が追加されるため、システム バックエンドは今後ログインするために mysql コマンドを直接使用できます。操作を標準化するためにここでは絶対パスが使用されます

# echo "PATH=$PATH:/usr/local/mysql3306/bin;export PATH" >> /etc/profile
# source /etc/profile
ログイン後にコピー

13. ポート テスト:

# /usr/local/mysql3306/bin/mysqladmin -u root password 123456   #设置超级管理员密码
# /usr/local/mysql3306/bin/mysql -P3306 -S/tmp/mysql3306.sock -uroot -p123456 #连接数据库
ログイン後にコピー

OK、完了!
IV. 問題

1、-bash: ./scripts/mysql_install_db: そのようなファイルまたはディレクトリはありません

インストールプロセス中に報告されるエラーメッセージは次のとおりです:

# /usr/local/mysql3307/bin/mysqladmin -u root password 123456   #设置超级管理员密码
# /usr/local/mysql3307/bin/mysql -P3307 -S/tmp/mysql3307.sock -uroot -p123456 #连接数据库
ログイン後にコピー

この時点では、解凍されたソース コード内のスクリプト ディレクトリをインストール ディレクトリにコピーし、コマンドを再実行できます。

2. cp: `/usr/local/mysql3307/support-files/mysql.server' を統計できません: そのようなファイルまたはディレクトリはありません

インストールプロセス中にコマンドを実行すると、次のエラーメッセージが表示されます:

# mysql -P3307 -S/tmp/mysql3307.sock -uroot -p123456
ログイン後にコピー

解凍したソースコード内の support-files ディレクトリをインストールディレクトリにコピーし、コマンドを再実行します


3. env: /etc/init.d/mysqld3307: Permission Deny

データベース起動時に、コマンドを実行します

#lsof -i:3306
#lsof -i:3307
ログイン後にコピー

エラーメッセージは次のとおりです: :

scripts/mysql_install_db --user=mysql --datadir=/usr/local/mysql3306/data
ログイン後にコピー

このとき、対応するファイルを認証してコマンドを実行する必要があります

-bash: ./scripts/mysql_install_db: No such file or directory
ログイン後にコピー

MySQLデータベースサービスを開始するコマンドを再実行しますservice mysqld3307 start


以上が複数の mysql データベース構成例の MySQL-Centos インストールの詳細な紹介の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート