Sun Cluster Data Service for MySQL ガイド (Solaris OS 版)

Sun Cluster HA for MySQL のインストールと構成

この章では、Sun Cluster HA for MySQL のインストールと構成の方法について説明します。

この章の内容は次のとおりです。

Sun Cluster HA for MySQL のインストールと構成

表 1 に、Sun Cluster HA for MySQL のインストールと構成に必要な作業を示します。指定された順番どおりに、各作業を行なってください。

表 1 Task Map: Sun Cluster HA for MySQL のインストールと構成

作業 

参照先 

1. インストールについて計画します。 

「Sun Cluster HA for MySQL の概要」

「Sun Cluster HA for MySQL のインストールと構成の計画」

2. MySQL をインストールして構成します。 

「MySQL をインストールおよび構成するには」

3. インストールと構成を確認します。 

「MySQL のインストールと構成を確認するには」

4. Sun Cluster HA for MySQL Package をインストールします。 

「Sun Cluster HA for MySQL パッケージのインストール」

5. Sun Cluster HA for MySQL を登録して構成します。 

「フェイルオーバーサービスとしての Sun Cluster HA for MySQL の登録と構成方法」

6. Sun Cluster HA for MySQL のインストールと構成を確認します。 

「Sun Cluster HA for MySQL のインストールと構成の確認方法」

7. Sun Cluster HA for MySQL の障害モニターを理解します。 

「Sun Cluster HA for MySQL 障害モニターの概要」

8. Sun Cluster HA for MySQL をデバッグします。 

「Sun Cluster HA for MySQL をデバッグする」

9. Sun Cluster HA for MySQL を使用するときに SC3.1 にアップグレードします。 

「Sun Cluster HA for MySQL を使用するときに SC3.1 にアップグレードする」

10. Sun Cluster HA for MySQL を使用するときに MySQL 3.23.54 から 4.0.15 にアップグレードします。 

「Sun Cluster HA for MySQL 使用時に MySQL を 3.23.54 から 4.x.x にアップグレードする」

Sun Cluster HA for MySQL の概要

MySQL ソフトウェアは、超高速で堅牢なマルチスレッドおよびマルチユーザー型の SQL (Structured Query Language) データベースサーバーを提供します。MySQL Server は作業量の多い基幹系の本番システム用であるとともに、大量配備型のソフトウェアに組み込むことが想定されています。MySQL は MySQL ABTM の商標です。

MySQL は、GNU 一般公衆利用許諾契約条件のもとで無料で利用でき、http://www.mysql.com からダウンロードできます。

Sun Cluster HA for MySQL データサービスのメカニズムによって、MySQL サービスの順序正しい起動、停止、障害モニター、自動フェイルオーバーを実行できます。次の MySQL コンポーネントは、Sun Cluster HA for MySQL データサービスによって保護されます。

表 2 コンポーネントの保護

構成要素 

コンポーネントを保護するデータサービス 

MySQL サーバー 

Sun Cluster HA for MySQL  

Sun Cluster HA for MySQL のインストールと構成の計画

ここでは、Sun Cluster HA for MySQL のインストールと構成の計画について説明します。

構成に関する制限事項

ここでは、Sun Cluster HA for MySQL にのみ適用されるソフトウェアとハードウェア構成の制限事項を示します。

すべてのデータサービスに適用される制限事項については、『Sun Cluster Release Notes』を参照してください。


注意 – 注意 –

これらの制限事項を守らないと、データサービスの構成がサポートされない場合があります。



例 1 MySQL インスタンス (広域ファイルシステムの場合)

次に、MySQL と 2 つの MySQL インスタンス (mysql-data-1mysql-data-2) の両方を広域ファイルシステムにインストールする例を示します。最終出力は、Veritas Volume Manager を使用して配備された MySQL に対応する /etc/vfstab エントリのサブセットです。


# ls -l /usr/local
total 4
drwxrwxrwx   2 root     other        512 Oct  1 16:44 bin
lrwxrwxrwx   1 root     other         13 Oct 11 11:20 mysql -> /global/mysql
#
# ls -l /global/mysql
total 10432
drwxr-xr-x  13 mysql    mysql        512 Mar 16 00:03 .
drwxrwxrwx   7 root     other       2048 Apr 11 09:53 ..
-rw-r--r--   1 mysql    mysql      19106 Mar 15 23:29 COPYING
-rw-r--r--   1 mysql    mysql      28003 Mar 15 23:29 COPYING.LIB
-rw-r--r--   1 mysql    mysql     126466 Mar 15 16:47 ChangeLog
-rw-r--r--   1 mysql    mysql       6811 Mar 15 23:29 INSTALL-BINARY
-rw-r--r--   1 mysql    mysql       1937 Mar 15 16:47 README
drwxr-xr-x   2 mysql    mysql       1536 Mar 16 00:03 bin
-rwxr-xr-x   1 mysql    mysql        773 Mar 16 00:03 configure
drwxr-x---   4 mysql    mysql        512 Mar 16 00:03 data
drwxr-xr-x   2 mysql    mysql       1024 Mar 16 00:03 include
drwxr-xr-x   2 mysql    mysql        512 Mar 16 00:03 lib
drwxr-xr-x   3 mysql    mysql        512 Mar 16 00:03 man
-rw-r--r--   1 mysql    mysql    2676944 Mar 15 23:23 manual.html
-rw-r--r--   1 mysql    mysql    2329252 Mar 15 23:23 manual.txt
-rw-r--r--   1 mysql    mysql      98233 Mar 15 23:23 manual_toc.html
drwxr-xr-x   6 mysql    mysql        512 Mar 16 00:03 mysql-test
drwxr-xr-x   2 mysql    mysql        512 Mar 16 00:03 scripts
drwxr-xr-x   3 mysql    mysql        512 Mar 16 00:03 share
drwxr-xr-x   7 mysql    mysql       1024 Mar 16 00:03 sql-bench
drwxr-xr-x   2 mysql    mysql        512 Mar 16 00:03 support-files
drwxr-xr-x   2 mysql    mysql        512 Mar 16 00:03 tests
# ls -l /global/mysql-data-1
Total 30
drwxrwxrwx   9 mysql    mysql        512 Apr 15 12:06 .
drwxrwxrwx  20 root     root        1024 Apr 10 12:41 ..
drwxr-xr-x   2 mysql    mysql        512 Apr 15 12:00 BDB
drwxrwxrwx   2 mysql    mysql        512 Apr 15 11:59 innodb
drwxrwxrwx   2 mysql    mysql       2048 Apr 15 14:47 logs
-rw-r--r--   1 mysql    mysql       1432 Apr 15 11:58 my.cnf
drwx------   2 mysql    mysql        512 Apr 15 11:59 mysql
-rw-rw----   1 mysql    mysql          5 Apr 15 14:47 mysqld.pid
drwx------   2 mysql    mysql        512 Apr 15 14:53 sc3_test_database
drwx------   2 mysql    mysql        512 Apr 15 11:58 test
drwx------   2 mysql    mysql        512 Apr 15 12:00 testdb
#

# ls -l /global/mysql-data-2
total 32
drwxrwxrwx   9 mysql    mysql        512 Apr 15 07:49 .
drwxrwxrwx  20 root     root        1024 Apr 10 12:41 ..
drwxr-xr-x   2 mysql    mysql        512 Apr 14 11:16 BDB
drwxr-xr-x   2 mysql    mysql        512 Apr 14 11:14 innodb
drwxr-xr-x   2 mysql    mysql       2560 Apr 15 10:15 logs
-rw-r--r--   1 mysql    mysql       1459 Apr 14 11:13 my.cnf
drwx------   2 mysql    mysql        512 Apr 14 11:14 mysql
-rw-rw----   1 mysql    mysql          5 Apr 15 10:10 mysqld.pid
drwx------   2 mysql    mysql        512 Apr 15 10:10 sc3_test_database
drwx------   2 mysql    mysql        512 Apr 14 11:14 test
drwx------   2 mysql    mysql        512 Apr 14 11:16 testdb

# more /etc/vfstab (Subset of the output)
/dev/vx/dsk/dg1/vol01   /dev/vx/rdsk/dg1/vol01  /global/mysql    ufs     2
yes global,logging
/dev/vx/dsk/dg2/vol01   /dev/vx/rdsk/dg2/vol01  /global/mysql-data-1    ufs     2
yes global,logging
/dev/vx/dsk/dg2/vol01   /dev/vx/rdsk/dg2/vol01  /global/mysql-data-2    ufs     2
yes global,logging

#


注 –

この例では、1 番目の MySQL インスタンスのデータベースディレクトリは /global/mysql-data-1 であり、2 番目の MySQL インスタンスのデータベースディレクトリは /global/mysql-data-2 です。



例 2 MySQL インスタンス (フェイルオーバーファイルシステムの場合)

次に MySQL をローカルファイルシステムに、2 つの MySQL インスタンス (mysql-data-1mysql-data-2) をフェイルオーバーファイルシステムにインストールする例を示します。最終出力は、Veritas Volume Manager を使用して配備された MySQL に対応する /etc/vfstab エントリのサブセットです。


# ls -l /usr/local/mysql
total 10432
drwxr-xr-x  13 mysql    mysql        512 Mar 16 00:03 .
drwxrwxrwx   7 root     other       2048 Apr 11 09:53 ..
-rw-r--r--   1 mysql    mysql      19106 Mar 15 23:29 COPYING
-rw-r--r--   1 mysql    mysql      28003 Mar 15 23:29 COPYING.LIB
-rw-r--r--   1 mysql    mysql     126466 Mar 15 16:47 ChangeLog
-rw-r--r--   1 mysql    mysql       6811 Mar 15 23:29 INSTALL-BINARY
-rw-r--r--   1 mysql    mysql       1937 Mar 15 16:47 README
drwxr-xr-x   2 mysql    mysql       1536 Mar 16 00:03 bin
-rwxr-xr-x   1 mysql    mysql        773 Mar 16 00:03 configure
drwxr-x---   4 mysql    mysql        512 Mar 16 00:03 data
drwxr-xr-x   2 mysql    mysql       1024 Mar 16 00:03 include
drwxr-xr-x   2 mysql    mysql        512 Mar 16 00:03 lib
drwxr-xr-x   3 mysql    mysql        512 Mar 16 00:03 man
-rw-r--r--   1 mysql    mysql    2676944 Mar 15 23:23 manual.html
-rw-r--r--   1 mysql    mysql    2329252 Mar 15 23:23 manual.txt
-rw-r--r--   1 mysql    mysql      98233 Mar 15 23:23 manual_toc.html
drwxr-xr-x   6 mysql    mysql        512 Mar 16 00:03 mysql-test
drwxr-xr-x   2 mysql    mysql        512 Mar 16 00:03 scripts
drwxr-xr-x   3 mysql    mysql        512 Mar 16 00:03 share
drwxr-xr-x   7 mysql    mysql       1024 Mar 16 00:03 sql-bench
drwxr-xr-x   2 mysql    mysql        512 Mar 16 00:03 support-files
drwxr-xr-x   2 mysql    mysql        512 Mar 16 00:03 tests
# ls -l /local/mysql-data-1
Total 30
drwxrwxrwx   9 mysql    mysql        512 Apr 15 12:06 .
drwxrwxrwx  20 root     root        1024 Apr 10 12:41 ..
drwxr-xr-x   2 mysql    mysql        512 Apr 15 12:00 BDB
drwxrwxrwx   2 mysql    mysql        512 Apr 15 11:59 innodb
drwxrwxrwx   2 mysql    mysql       2048 Apr 15 14:47 logs
-rw-r--r--   1 mysql    mysql       1432 Apr 15 11:58 my.cnf
drwx------   2 mysql    mysql        512 Apr 15 11:59 mysql
-rw-rw----   1 mysql    mysql          5 Apr 15 14:47 mysqld.pid
drwx------   2 mysql    mysql        512 Apr 15 14:53 sc3_test_database
drwx------   2 mysql    mysql        512 Apr 15 11:58 test
drwx------   2 mysql    mysql        512 Apr 15 12:00 testdb
#

#ls -l /local/mysql-data-2
total 32
drwxrwxrwx   9 mysql    mysql        512 Apr 15 07:49 .
drwxrwxrwx  20 root     root        1024 Apr 10 12:41 ..
drwxr-xr-x   2 mysql    mysql        512 Apr 14 11:16 BDB
drwxr-xr-x   2 mysql    mysql        512 Apr 14 11:14 innodb
drwxr-xr-x   2 mysql    mysql       2560 Apr 15 10:15 logs
-rw-r--r--   1 mysql    mysql       1459 Apr 14 11:13 my.cnf
drwx------   2 mysql    mysql        512 Apr 14 11:14 mysql
-rw-rw----   1 mysql    mysql          5 Apr 15 10:10 mysqld.pid
drwx------   2 mysql    mysql        512 Apr 15 10:10 sc3_test_database
drwx------   2 mysql    mysql        512 Apr 14 11:14 test
drwx------   2 mysql    mysql        512 Apr 14 11:16 testdb

# more /etc/vfstab (Subset of the output)
/dev/vx/dsk/dg2/vol01   /dev/vx/rdsk/dg2/vol01  /local/mysql-data-1    ufs     2
yes logging
/dev/vx/dsk/dg2/vol01   /dev/vx/rdsk/dg2/vol01  /local/mysql-data-2    ufs     2
yes logging
#


注 –

この例では、1 番目の MySQL インスタンスのデータベースディレクトリは /local/mysql-data-1 であり、2 番目の MySQL インスタンスのデータベースディレクトリは /local/mysql-data-2 です。


構成に関する要件

ここで説明する要件が適用されるのは、Sun Cluster HA for MySQL に限られます。Sun Cluster HA for MySQL のインストールと構成を始める前に、次の要件を満たしておく必要があります。


注意 – 注意 –

次の要件を満たさないと、データサービスの構成がサポートされない場合があります。


Sun Cluster HA for MySQL のコンポーネントとコンポーネント間の依存関係

MySQL コンポーネントとそれらの依存関係 — Sun Cluster HA for MySQL データサービスは、MySQL インスタンスとそれぞれのコンポーネントを保護するように構成できます。コンポーネントと各コンポーネント間の依存関係について簡単に説明します。


注 –

この例では、1 番目の MySQL インスタンスのデータベースディレクトリは /local/mysql-data-1 であり、2 番目の MySQL インスタンスのデータベースディレクトリは /local/mysql-data-2 です。


表 3 Sun Cluster HA for MySQL の依存関係

構成要素 

説明 

MySQL サーバー 

-> SUNW.LogicalHost リソース

SUNW.LogicalHost リソースは、MySQL IP アドレスを管理し、その IP アドレスが実際に使用されるまでは MySQL が起動しないようにします。 

MySQL サーバー 

-> SUNW.HAStoragePlus リソース

SUNW.HAStoragePlus リソースは、MySQL のファイルシステムのマウントポイントを管理し、ファイルシステムがマウントされるまでは MySQL が起動しないようにします。 

Sun Cluster HA for MySQL の登録と構成ファイル

MySQL コンポーネントには 2 つの構成/登録ファイルがあり、ファイルは /opt/SUNWscmys/util に格納されています。これらのファイルを使用すると、MySQL コンポーネントを Sun Cluster に登録でき、さらに、MySQL インスタンスを登録する準備を行うことができます。

これらのファイル内では、適切な依存関係が適用されます。


例 3 Sun Cluster 用の MySQL 構成/登録ファイル


# cd /opt/SUNWscmys
#
# ls -l util
-rwxr-xr-x   1 root     other       1208 Mar 25 13:49 ha_mysql_config
-rwxr-xr-x   1 root     other        820 Mar 25 13:55 ha_mysql_register
-rwxr-xr-x   1 root     other       1105 Apr 16 07:48 mysql_config
-rwxr-xr-x   1 root     other       2993 Apr 11 10:57 mysql_register
#
# more util/*config
::::::::::::::
util/mysql_config
::::::::::::::
#
# Copyright 2003 Sun Microsystems, Inc.  All rights reserved.
# Use is subject to license terms.
# 
# This file will be sourced in by mysql_register and the parameters
# listed below will be used.
#

# Where is mysql installed (BASEDIR)
(日本語訳)
# mysql のインストール場所 (BASEDIR)
MYSQL_BASE=

# Mysql admin-user for localhost
(日本語訳)
# ローカルホストの mysql 管理ユーザー
MYSQL_USER=

# Password for mysql admin user
(日本語訳)
# mysql 管理ユーザー用のパスワード
MYSQL_PASSWD=

# Configured logicalhost
(日本語訳)
# 構成済み論理ホスト
MYSQL_HOST=

# Specify a username for a faultmonitor user
(日本語訳)
# 障害モニターユーザーのユーザー名を指定する
FMUSER=

# Pick a password for that faultmonitor user
(日本語訳)
# 障害モニターユーザー用のパスワードを選ぶ
FMPASS=

# Socket name for mysqld ( Should be /tmp/<logical host>.sock )
(日本語訳)
# mysqld のソケット名 (/tmp/<logical host>.sock )
MYSQL_SOCK=/tmp/<logical host>.sock

# FOR SC3.1 ONLY, Specify the physical hostname for the
# physical NIC that this logicalhostname belongs to for every node in the
# cluster this Resourcegroup can located on.
# IE: The logicalhost lh1 belongs to hme1 for physical-node phys-1 and
# hme3 for  physical-node phys-2. The hostname for hme1 is phys-1-hme1 and
# for hme3 on phys-2 it is phys-2-hme3.
# IE: MYSQL_NIC_HOSTNAME="phys-1-hme1 phys-2-hme3"
(日本語訳)
# SC3.1 に限り、物理 NIC には物理ホスト名を指定してください。
# SC3.1 の論理ホスト名は、このリソースグループを置くことができる
# クラスタのすべてのノードに属します。
# 例: 論理ホスト lh1 は、物理ノード phys-1 では hme1 に属し、
# 物理のノード phys-2 では hme3 に属します。hme1 のホスト名は phys-1-hme1、
# phys-2 の hme3 のホスト名は phys-2-hme3 です。
# 例: MYSQL_NIC_HOSTNAME="phys-1-hme1 phys-2-hme3"
MYSQL_NIC_HOSTNAME=""
::::::::::::::
util/ha_mysql_config
::::::::::::::
#
# Copyright 2003 Sun Microsystems, Inc.  All rights reserved.
# Use is subject to license terms.
# 
# This file will be sourced in by ha_mysql_register and the parameters
# listed below will be used.
(日本語訳)
# このファイルは ha_mysql_register によって有効化され、以下のパラメータ
# が使用されます。
#
# These parameters can be customized in (key=value) form
#
#        RS - name of the resource for the application
#        RG - name of the resource group containing RS
#   BASEDIR - name of the Mysql bin directory
#   DATADIR - name of the Mysql Data directory
# MYSQLUSER - name of the user Mysql should be started of
#        LH - name of the LogicalHostname SC resource
# MYSQLHOST - name of the host in /etc/hosts
#    FMUSER - name of the Mysql fault monitor user
#    FMPASS - name of the Mysql fault monitor user password
#    LOGDIR - name of the directory mysqld should store it's logfile.
#    CHECK  - should HA-MySQL check MyISAM index files before start YES/NO.
#    HAS_RS - name of the mysql HAStoragePlus SC resource
#
#       The following examples illustrate sample parameters
#       for Mysql
#
#       BASEDIR=/usr/local/mysql
#       DATADIR=/global/mysqldata
#       MYSQLUSER=mysql
#       LH=mysqllh
#       MYSQLHOST=mysqlipname
#       FMUSER=fmuser
#       FMPASS=fmuser
#       LOGDIR=/global/mysqldata/logs
#       CHECK=YES
#
(日本語訳)
# このパラメータは (キー=値) 形式でカスタマイズできます。
#
#        RS - アプリケーションのリソース名
#        RG - RS を含むリソースグループ名
#   BASEDIR - Mysql bin ディレクトリ名
#   DATADIR - Mysql Data ディレクトリ名
# MYSQLUSER - Mysql の起動ユーザー名
#        LH - LogicalHostname SC リソース名
# MYSQLHOST - name of the host in /etc/hosts
#    FMUSER - Mysql 障害モニターユーザー名
#    FMPASS - Mysql 障害モニターユーザー用のパスワード名
#    LOGDIR - mysqld がログファイルを格納するディレクトリ名
#     CHECK - HA-MySQL が MyISAM のインデックスファイルをチェックしてからスタート
#             する、YES/NO
#    HAS_RS - mysql HAStoragePlus SC リソース名
#
#      以下に、Mysql のパラメータの例を示します。
#
#       BASEDIR=/usr/local/mysql
#       DATADIR=/global/mysqldata
#       MYSQLUSER=mysql
#       LH=mysqllh
#       MYSQLHOST=mysqlipname
#       FMUSER=fmuser
#       FMPASS=fmuser
#       LOGDIR=/global/mysqldata/logs
#       CHECK=YES

RS=
RG=
BASEDIR=
DATADIR=
MYSQLUSER=
LH=
MYSQLHOST=
FMUSER=
FMPASS=
LOGDIR=
CHECK=
HAS_RS=
# 

my.cnf ファイルの説明

my.cnf file — Sun Cluster HA for MySQL データサービスには my.cnf のサンプルファイルが 2 つ (マスター構成用とスレーブ構成用) 用意されています。ただし、最低でも次のパラメータを設定する必要があります。


注 –

MySQL の中で、my.cnf は重要なファイルです。各パラメータの設定の詳細については、MySQL のマニュアルを参照してください。


マスター構成のセクション [mysqld] 内の MySQL ファイル my.cnf

スレーブ構成のセクション [mysqld] 内の MySQL ファイル my.cnf

MySQL のインストールと構成

この節では、MySQL のインストールと構成に必要な手順について説明します。

MySQL の特定のディレクトリが参照されます。次に、これらの参照への一般的なパス名を示します。「構成に関する制限事項」を参照してください。

ProcedureMySQL をインストールおよび構成するには

手順
  1. Sun Cluster における MySQL の配備方法を決定します。

    • 配備する MySQL インスタンス数を決定します。

    • 各 MySQL インスタンスで使用するクラスタファイルシステムを決定します。

  2. MySQL クラスタファイルシステムをマウントします。


    注 –

    MySQL インスタンスにフェイルオーバーファイルシステムを使用させる場合は、手動でファイルシステムをマウントする必要があります。


  3. Sun Cluster 内の全ノードに MySQL をインストールします。

    MySQL は広域ファイルシステムにインストールすることをお勧めします。ローカルファイルシステムにソフトウェアをインストールした場合とクラスタファイルシステムにインストールした場合の長所と短所については、『Sun Cluster データサービスのインストールと構成』の「アプリケーションバイナリの格納先の決定」を参照してください。

    http://www.mysql.com から MySQL をダウンロードする — MySQL ソフトウェア用にローカルディスクを使用する予定の場合、この手順を Sun Cluster 内のすべてのノード上で繰り返す必要があります。

  4. MySQL を実行するクラスタ内のすべてのノードで MySQL 用の mysql-user と mysql-group を作成します。

    Sun Cluster のすべてのノードで、/etc/group にエントリを作成します。


    • # groupadd -g 1000 mysql
      

      Sun Cluster のすべてのノードで、/etc/passwd にエントリを作成します。このユーザーにはロックしたパスワードを与えてください。


      # useradd -u 1000 -g 1000 -d /global/mysql -s /bin/sh mysql 
      
  5. MySQL バイナリ用の所有者とグループを変更します。

    MySQL バイナリがすべてのノードにある場合は、すべてのノードでこの手順を繰り返す必要があります。


    # chown -R mysql:mysql /global/mysql
    
  6. MySQL インスタンス用の MySQL データベースディレクトリを作成します。


    # mkdir <MySQL Database directory>
    #

    注 –

    <MySQL Database directory> については、「構成に関する制限事項」を、一般的なパス名については、「MySQL のインストールと構成」を参照してください。


    MySQL インスタンスを 1 つ示します。MySQL は、http://www.mysql.com から広域ファイルシステムとしてマウントされた /global/mysql にインストールされています。この MySQL インスタンス用の MySQL データベースディレクトリ/global/mysql-data です。


    # cd /global/mysql
    #
    # ls -l
    -rw-r--r--   1 mysql    mysql      19106 Dec 10 14:52 COPYING
    -rw-r--r--   1 mysql    mysql      28003 Dec 10 14:52 COPYING.LIB
    -rw-r--r--   1 mysql    mysql      44577 Dec  5 10:37 ChangeLog
    -rw-r--r--   1 mysql    mysql       6811 Dec 10 14:53 INSTALL-BINARY
    -rw-r--r--   1 mysql    mysql       1976 Dec  5 10:37 README
    drwxr-xr-x   2 mysql    mysql       1024 Dec 13 18:05 bin
    -rwxr-xr-x   1 mysql    mysql        773 Dec 10 15:34 configure
    drwxr-x---   3 mysql    mysql        512 Apr  3 12:23 data
    drwxr-xr-x   2 mysql    mysql       1024 Dec 10 15:35 include
    drwxr-xr-x   2 mysql    mysql        512 Dec 10 15:35 lib
    drwxr-xr-x   2 mysql    mysql        512 Dec 10 15:35 man
    -rw-r--r--   1 mysql    mysql    2582089 Dec 10 14:47 manual.html
    -rw-r--r--   1 mysql    mysql    2239278 Dec 10 14:47 manual.txt
    -rw-r--r--   1 mysql    mysql      94600 Dec 10 14:47 manual_toc.html
    drwxr-xr-x   6 mysql    mysql        512 Dec 10 15:35 mysql-test
    drwxr-xr-x   2 mysql    mysql        512 Dec 10 15:35 scripts
    drwxr-xr-x   3 mysql    mysql        512 Dec 10 15:35 share
    drwxr-xr-x   7 mysql    mysql       1024 Dec 10 15:35 sql-bench
    drwxr-xr-x   2 mysql    mysql        512 Dec 10 15:35 support-files
    drwxr-xr-x   2 mysql    mysql        512 Dec 10 15:35 tests
    #
  7. 必要に応じて MySQL ファイル my.cnf を作成します。— Sun Cluster HA for MySQL データサービスには、MySQL 用にサンプル my.cnf ファイルが 2 つ用意されています。1 つはマスター構成用のサンプル構成ファイル、もう 1 つはスレーブ構成用のサンプルファイルです。


    注 –

    Sun Cluster の初回のインストール時に Sun Cluster HA for MySQL パッケージ (SUNWscmys) をインストールしなかった場合は、「Sun Cluster HA for MySQL パッケージのインストール」 に進んでパッケージを SC3.1 と SC3.0U3 にインストーしてください。そのあと、ここへ戻って MySQL のインストールと構成を続けてください。


    /opt/SUNWscmys/etc/my.cnf_sample_[master|slave] はサンプルの MySQL 構成ファイルであり、このファイルを使用すると、独自の MySQL インスタンス用の <MySQL Databasedirectory>/my.cnf を作成できます。ただし、各自の構成値が反映されるように、ファイルを編集する必要があります。


    # cp /opt/SUNWscmys/etc/my.cnf_sample_master  \
     <MySQL Databasedirectory>/my.cnf  
    
  8. MySQL インスタンスのブートストラップを実行します。— これによって、特権テーブル db、host、user、tables_priv、および columns_priv が func テーブルとともに mysql データベース内に作成されます。


    # cd <MySQL Basedirectory>
    

    # ./scripts/mysql_install_db  \
    --datadir=<MySQL Database directory>
    
  9. <MySQL Database Directory>にログファイルディレクトリを作成します。


    # mkdir <MySQL Database Directory>/logs  
    
  10. <MySQL Database Directory> 用の所有者とグループを変更します。


    # chown -R mysql:mysql <MySQL Database Directory>
    
  11. <MySQL Database Directory>/my.cnf ファイルのアクセス権を変更します。


    # chmod 644  <MySQL Database Directory>/my.cnf

MySQL のインストールと構成の確認

この節では、インストールと構成の確認に必要な手順を説明します。

ProcedureMySQL のインストールと構成を確認するには

データサービスをまだインストールしていないため、この手順ではアプリケーションの可用性が高いかどうかを確認することはできません。


注 –

MySQL のインストールと構成を確認する前に、MySQL に対応する論理ホスト名が使用可能かどうかを確認します。論理ホスト名を利用するには、「フェイルオーバーサービスとしての Sun Cluster HA for MySQL の登録と構成方法」の手順 2 から手順 7 までを完了する必要があります。


手順
  1. このインスタンス用に MySQL サーバーを起動します。


    #cd <MySQL Basedirectory>
    

    # ./bin/mysqld --defaults-file=<MySQL Databasedirectry>/my.cnf \
    --basedir=<MySQL Basedirectory>\
     --datadir=<MySQL Databasedirectory>\
     --user=mysql --pid-file=<MySQL Databasedirectory>/mysqld.pid &
    
  2. MySQL インスタンスに接続します。


    # <MySQL Basedirectory>/bin/mysql -h <Logical host> -uroot
    
  3. MySQL サーバーインスタンスを停止します。


    # kill -TERM `cat <MySQL Databasedirectory>/mysqld.pid
    

Sun Cluster HA for MySQL パッケージのインストール

Sun Cluster の初回のインストールで Sun Cluster HA for MySQL パッケージをインストールしなかった場合は、ここで説明する作業を行なってパッケージをインストールしてください。この手順は、Sun Cluster HA for MySQL パッケージをインストールする各クラスタノード上で個別に実行します。この手順を実行するには、Sun Cluster Agents CD-ROM が必要です。

複数のデータサービスを同時にインストールする場合は、『Sun Cluster ソフトウェアのインストール (Solaris OS 版)』「ソフトウェアのインストール」に記載されている手順を実行してください。

次のインストールツールのどれか 1 つを使用して、Sun Cluster HA for MySQL パッケージをインストールしてください。


注 –

Web Start プログラムは、Sun Cluster 3.1 Data Services 10/03 より前のリリースでは利用できません。

Solaris 10 を使用している場合は、これらのパッケージを大域ゾーンにだけインストールしてください。パッケージをインストールしたあとで作成されたローカルゾーンにそれらのパッケージが転送されないようにするには、scinstall ユーティリティーを使用してパッケージをインストールしてください。Web Start プログラムは使用しないでください。


ProcedureWeb Start プログラムを使用して Sun Cluster HA for MySQL パッケージをインストールする

Web Start プログラムは、コマンド行インタフェース (CLI) またはグラフィカルユーザーインタフェース (GUI) を使用して実行できます。CLI と GUI での作業の内容と手順はほとんど同じです。Web Start プログラムの詳細は、installer(1M) のマニュアルページを参照してください。

手順
  1. Sun Cluster HA for MySQL パッケージをインストールするクラスタノード上で、スーパーユーザーになります。

  2. (省略可能) GUI で Web Start プログラムを実行する場合は、DISPLAY 環境変数が設定されていることを確認してください。

  3. CD-ROM ドライブに Sun Cluster Agents CD-ROM を挿入します。

    ボリューム管理デーモン vold(1M) が実行されており、CD-ROM デバイスを管理するように構成されている場合は、デーモンによって CD-ROM が自動的に /cdrom/cdrom0 ディレクトリにマウントされます。

  4. CD-ROM の Sun Cluster HA for MySQL コンポーネントディレクトリに移動します。

    Sun Cluster HA for MySQL データサービスの Web Start プログラムは、このディレクトリに入っています。


    # cd /cdrom/cdrom0/components/SunCluster_HA_MySQL_3.1
    
  5. Web Start プログラムを起動します。


    # ./installer
    
  6. プロンプトが表示されたら、インストールの種類を選択します。

    • C ロケールのみをインストールする場合は、一般を選択します。

    • ほかのロケールをインストールする場合は、カスタムを選択します。

  7. 表示される手順に従って、ノードに Sun Cluster HA for MySQL パッケージをインストールします。

    インストールが終了すると、Web Start プログラムのインストールサマリーが出力されます。このサマリーを使用して、インストール時に Web Start によって作成されたログを確認できます。これらのログは、/var/sadm/install/logs ディレクトリにあります。

  8. Web Start プログラムを終了します。

  9. Sun Cluster Agents CD-ROM を CD-ROM ドライブから取り出します。

    1. CD-ROM が使用されないように、CD-ROM 上のディレクトリ以外に移動します。

    2. CD-ROM を取り出します。


      # eject cdrom
      

Procedure scsintall ユーティリティーを使用して Sun Cluster HA for MySQL パッケージをインストールする

この作業には、Sun Cluster Agents CD-ROM が必要です。この手順では、Sun Cluster の初期インストール時にデータサービス パッケージをインストールしていない場合を想定しています。

Sun Cluster の初回のインストールで Sun Cluster HA for MySQL パッケージをインストールした場合は、「Sun Cluster HA for MySQL の登録と構成」に進んでください。

この作業は、Sun Cluster HA for MySQL データサービスを実行できるすべてのノードで行います。

手順
  1. CD-ROM ドライブに Sun Cluster Agents CD-ROM を挿入します。

  2. オプションを指定せずに scinstall ユーティリティーを実行します。

    scinstall ユーティリティーが対話型モードで起動します。

  3. メニューオプション「新しいデータサービスのサポートをこのクラスタノードに追加」を選択します。

    scinstall ユーティリティーにより、ほかの情報を入力するためのプロンプトが表示されます。

  4. Sun Cluster Agents CD-ROM のパスを指定します。

    ユーティリティーはこの CD をデータサービス CD-ROM として示します。

  5. インストールするデータサービスを指定します。

    選択したデータサービスが scinstall ユーティリティーによって示され、この選択内容の確認が求められます。

  6. scinstall ユーティリティーを終了します。

  7. ドライブから CD を取り出します。

Sun Cluster HA for MySQL の登録と構成

ここでは Sun Cluster HA for MySQL の構成手順について説明します。

Procedureフェイルオーバーサービスとしての Sun Cluster HA for MySQL の登録と構成方法

この手順は、Sun Cluster の初回のインストール時にこのデータサービスパッケージをインストールしている場合を想定しています。

Sun Cluster の初回のインストールで Sun Cluster HA for MySQL パッケージをインストールしなかった場合は、 scsintall ユーティリティーを使用して Sun Cluster HA for MySQL パッケージをインストールする」に進んでください。

手順
  1. MySQL のホストとなるクラスタノードの 1 つで、スーパーユーザーになります。

  2. SUNW.gdsリソースタイプを登録します。


    # scrgadm -a -t SUNW.gds
    
  3. SUNW.HAStoragePlus リソースタイプを登録します。


    # scrgadm -a -t SUNW.HAStoragePlus
    
  4. フェイルオーバーリソースグループを作成します。


    # scrgadm -a -g MySQL-failover-resource-group
    
  5. MySQL ディスク記憶装置に対応するリソースを作成します。


    # scrgadm -a -j MySQL-has-resource  \
    -g MySQL-failover-resource-group   \
    -t SUNW.HAStoragePlus  \
    -x FilesystemMountPoints=MySQL- instance-mount-points
    
  6. MySQL 論理ホスト名に対応するリソースを作成します。


    # scrgadm -a -L -j MySQL-lh-resource  \
    -g MySQL-failover-resource-group  \
    -l MySQL-logical-hostname
    
  7. MySQL ディスク記憶装置と論理ホスト名のリソースが組み込まれたフェイルオーバーリソースグループを有効にします。


    # scswitch -Z -g MySQL-failover-resource-group
    

    注 –

    mysql_install_db を実行したノード上でリソースグループを有効にする必要があります。


  8. MySQL サーバーインスタンスを手動で起動します。


    #cd <MySQL Basedirectory>
    

    # ./bin/mysqld --defaults-file=<MySQL Databasedirectry>/my.cnf \
    --basedir=<MySQL. Basedirectory>\
     --datadir=<MySQL Databasedirectory>\
     --user=mysql\
     --pid-file=<MySQL Databasedirectory>/mysqld.pid &
    
  9. admin ユーザー用の admin パスワードを設定します。


    # <MySQL Databasedirectry>/bin/mysqladmin -S /tmp/<Logical host>.sock password 'admin password'
    
  10. MySQL インスタンスに対応する障害モニターユーザーとテスト用データベースを作成します。


    # cd /opt/SUNWscmys/util
    

    mysql_config ファイルを編集し、ファイル内のコメントに従います。


    # mysql のインストール場所 (BASEDIR)
    MYSQL_BASE=
    
    # ローカルホストの Mysql 管理ユーザー (root)
    MYSQL_USER=
    
    # mysql 管理ユーザーのパスワード
    MYSQL_PASSWD=
    
    # 構成済み論理ホスト
    MYSQL_HOST=
    
    # 障害モニターユーザーのユーザー名を指定する
    FMUSER=
    
    # 障害モニターユーザー用のパスワードを選ぶ
    FMPASS=
    
    # mysqld のソケット名 (/tmp/<Logical host>.sock)
    MYSQL_SOCK=
    
    # SC3.1 に限り、物理 NIC には物理ホスト名を指定してください。
    # SC3.1 の論理ホスト名は、このリソースグループを置くことができる
    # クラスタのすべてのノードに属します。
    # 例: 論理ホスト lh1 は、物理ノード phys-1 では hme1 に属し、
    # 物理ノード phys-2 では hme3 に属します。hme1 のホスト名は phys-1-hme1、
    # phys-2 の hme3 のホスト名は phys-2-hme3 です。
    # 例: MYSQL_NIC_HOSTNAME="phys-1-hme1 phys-2-hme3"
    MYSQL_NIC_HOSTNAME=""

    注 –

    SC 3.1 上の MySQL インスタンスの例を示します。



    MYSQL_BASE=/global/mysql
    MYSQL_USER=root
    MYSQL_PASSWD=root
    MYSQL_HOST=hahostix1
    FMUSER=fmuser
    FMPASS=fmuser
    MYSQL_SOCK=/tmp/hahostix1.sock
    MYSQL_NIC_HOSTNAME="clusterix1 clusterix2"
    

    注 –

    SC3.0U3 を使用している場合は、MYSQL_NIC_HOSTNAME パラメータを省略してください。


    mysql_config を編集したあとは、mysql_register スクリプトを実行する必要があります。


    # ./mysql_register
    
  11. MySQL サーバーインスタンスを手動で停止します。


    # kill -TERM `cat <MySQL Databasedirectry>/mysqld.pid
    
  12. フェイルオーバーデータサービスとして MySQL を作成し、登録します。


    # cd /opt/SUNWscmys/util
    

    ha_mysql_config ファイルを編集し、ファイル内のコメントに従います。コメントの例を示します。


     次のパラメータは (キー=値) の形式でカスタマイズできます。
    #
    #        RS - アプリケーションのリソース名
    #        RG - RS を含むリソースグループ名
    #   BASEDIR - Mysql bin ディレクトリ名
    #   DATADIR - Mysql Data ディレクトリ名
    # MYSQLUSER - Mysql の起動ユーザー名
    #        LH - LogicalHostname SC リソース名
    # MYSQLHOST - name of the host in /etc/hosts
    #    FMUSER - Mysql 障害モニターユーザー名
    #    FMPASS - Mysql 障害モニターユーザー用のパスワード名
    #    LOGDIR - mysqld がログファイルを格納するディレクトリ名
    #    CHECK  - HA-MySQL が MyISAM のインデックスファイルをチェックしてからスタートする、YES/NO
    #    HAS_RS - MySQL HAStoragePlus SC リソース名
    #

    MySQL インスタンスの例は次のようになります。


    RS=mysql-res
    RG=mysql-rg
    BASEDIR=/global/mysql
    DATADIR=/global/mysql-data
    MYSQLUSER=mysql
    LH=hahostix1
    MYSQLHOST=hahostix1
    FMUSER=fmuser
    FMPASS=fmuser
    LOGDIR=/global/mysql-data/logs
    CHECK=YES 
    HAS_RS=mysql-has-res
    
  13. 各 MySQL リソースを有効にします。

    複数のインスタンスを作成した場合は、MySQL インスタンスごとにこの手順を繰り返します。


    # scstat -g
    # scswitch -e -j MySQL-resource
    
  14. MySQL Logicalhost ip name を使用して、MySQL インスタンスにローカルにアクセスするための管理ユーザーを追加します。


    注 –

    MySQL インスタンスへのアクセスをソケット (ローカルホスト) からだけにする場合は、この手順を省略します。


    MySQL のブートストラップを実行するとき、コマンド mysql_install_db は 2 人の管理ユーザー、つまりローカルホストに属する管理ユーザーと mysql_install_db を実行したノードに属する管理ユーザーを作成します。

    SC3.0U3 を使用している場合は、物理ノードに属する root ユーザーを削除し、論理ホストに属する管理ユーザーを追加するべきです。

    次に、SC3.0U3 での MySQL インスタンスの例を示します。


    # mysql -S /tmp/hahostix1.sock -uroot
    mysql> use mysql;
    mysql> DELETE FROM user where User='root' AND Host='clusterix1';
    mysql> GRANT ALL ON *.* TO 'root'@'hahostix1' IDENTIFIED BY 'rootpasswd';
    mysql> exit;

    SC3.1 を使用する場合は、クラスタ内のこの MySQL インスタンスが動作するすべての物理ノードに、admin ユーザーを追加します。


    注 –

    ノード名と物理インタフェースのホスト名が異なる場合は、物理インタフェースのホスト名を使用します。


    次に、SC3.1 での MySQL インスタンスの例を示します。


    # mysql -S /tmp/hahostix1.sock -uroot
    mysql> use mysql;
    mysql> mysql> GRANT ALL ON *.* TO 'root'@'clusterix2' IDENTIFIED BY 'rootpasswd';
    mysql> mysql> GRANT ALL ON *.* TO 'root'@'clusterix1' IDENTIFIED BY 'rootpasswd';
    mysql> exit;

    注 –

    admin ユーザーに Grant_priv を手動で追加する必要があります。MySQL の管理マニュアルを参照してください。


Sun Cluster HA for MySQL のインストールと構成の確認

ここでは、データサービスが正しくインストールされ構成されているかどうかを確認する手順について説明します。

ProcedureSun Cluster HA for MySQL のインストールと構成の確認方法

手順
  1. MySQL のホストとなるクラスタノードの 1 つで、スーパーユーザーになります。

  2. scstat を使用して、すべての MySQL リソースがオンライン状態であることを確認します。


    # scstat 
    

    オンラインになっていない MySQL リソースごとに、次のように scswitch コマンドを使用します。


    # scswitch -e -j MySQL- resource
    
  3. scswitch コマンドを実行し、MySQL リソースグループをほかのクラスタノード (node2 など) に切り替えます。


    # scswitch -z -g MySQL-failover-resource-group -h node2
    

Sun Cluster HA for MySQL 障害モニターの概要

ここでは、Sun Cluster HA for MySQL 障害モニターのプローブアルゴリズムまたは機能について説明し、プローブの失敗に関連する条件、メッセージ、回復処理を示します。

障害モニターの概念については、『Sun Cluster 3.1 の概念』を参照してください。

リソースプロパティー

Sun Cluster HA for MySQL 障害モニターでは、リソースタイプ SUNW.gds と同じリソースプロパティーを使用します。使用するリソースプロパティーの全リストについては、SUNW.gds(5) のマニュアルページを参照してください。

検証アルゴリズムと機能

Sun Cluster HA for MySQL をデバッグする

ProcedureSun Cluster HA for MySQL のデバッグを有効にする

ここでは、Sun Cluster HA for MySQL のデバッグを有効にする方法について説明します。

Sun Cluster HA for MySQL は複数の MySQL インスタンスで使用できます。デバッグはすべての MySQL インスタンスに対して有効にすることも、特定の MySQL インスタンスに対して有効にすることもできます。

MySQL コンポーネントごとに DEBUG ファイルがあり、/opt/SUNWscmys/etc に格納されます。

このファイルによって、Sun Cluster の特定のノードですべての MySQL インスタンスに対してデバッグを有効にすることも、あるいは特定の MySQL インスタンスに対してデバッグを有効にすることもできます。Sun Cluster 全体にわたって、Sun Cluster HA for MySQL のデバッグを有効にしなければならない場合は、Sun Cluster 内のすべてのノードでこの手順を繰り返す必要があります。

手順
  1. /etc/syslog.conf を編集します。

    /etc/syslog.conf を編集し、daemon.noticedaemon.debug に変更します。


    # grep daemon /etc/syslog.conf
    *.err;kern.debug;daemon.notice;mail.crit        /var/adm/messages
    *.alert;kern.err;daemon.err                     operator
    #

    daemon.noticedaemon.debugに変更し、syslogd を再起動します。次に示す grep daemon /etc/syslog.conf コマンドの出力例では、daemon.debug が設定されています。


    # grep daemon /etc/syslog.conf
    *.err;kern.debug;daemon.debug;mail.crit        /var/adm/messages
    *.alert;kern.err;daemon.err                    operator
    #
    # pkill -1 syslogd
    #
  2. /opt/SUNWscmys/etc/config を編集し、DEBUG=DEBUG=ALL または DEBUG= resource に変更します。


    # cat /opt/SUNWscmys/etc/config
    #
    # Copyright 2003 Sun Microsystems, Inc.  All rights reserved.
    # Use is subject to license terms.
    #
    # Usage:
    #       DEBUG=<RESOURCE_NAME> or ALL
    #
    DEBUG=ALL
    #

    注 –

    デバッグを無効にするには、これらの手順を逆にします。


Sun Cluster HA for MySQL を使用するときに SC3.1 にアップグレードする

ここでは、Sun Cluster HA for MySQL を使用するときに SC3.1 にアップグレードする方法について説明します。


注 –

ここでは、SC3.1 にアップグレードする手順については説明しません。Sun Cluster HA for MySQL を SC3.1 にアップグレードする手順に限定して説明します。


ProcedureSun Cluster HA for MySQL 使用時に Sun Cluster 3.1 にアップグレードする

次に、Sun Cluster HA for MySQL を SC3.1 にアップグレードする手順を示します。

手順
  1. —n —j MySQL- resource を使用して、Sun Cluster HA for MySQL リソースをシャットダウンします。


    # scswitch -n -j MySQL- resource
    
  2. Sun Cluster のマニュアルに従って、ノードを SC3.1 にアップグレードします。

  3. SC3.1 上で MySQL サーバーを手動で起動します。


    #cd <MySQL Basedirectory>
    

    # ./bin/mysqld --defaults-file=<MySQL Databasedirectry>/my.cnf \
    --basedir=<MySQL Basedirectory>\
     --datadir=<MySQL Databasedirectory>\
     --user=mysql\
     --pid-file=<MySQL Databasedirectory>/mysqld.pid &
    
  4. ソケットオプションを指定して、ローカルノードから MySQL インスタンスにアクセスします。


    #<MySQL Basedirectory>
    /bin/mysql -S <MySQL Socket> -uroot \
     -p<Adminpassword>\
    

    MySQL インスタンスの例は次のようになります。


    # mysql -s /tmp/hahostix1.sock -uroot -proot
    mysql> 
  5. Sun Cluster HA for MySQL のテストデータベース sc3_test_database を削除します。


    # mysql -s /tmp/hahostix1.sock -uroot -proot
    mysql> DROP DATABASE sc3_test_database;
    Query OK, 0 rows affected (0.03 sec)
  6. データベース mysql 内のテーブル db から、User='<MySQL Faultmonitor user>' という文字列を含むエントリをすべて削除します。


    # mysql -s /tmp/hahostix1.sock -uroot -proot
    mysql> use mysql;
    Database changed
    mysql> DELETE FROM db WHERE User='fmuser';
    Query OK, 1 row affected (0.03 sec)
  7. データベース mysql 内のテーブル user から、User='<MySQL Faultmonitor user>' という文字列を含むエントリをすべて削除します。


    # mysql -s /tmp/hahostix1.sock -uroot -proot
    mysql> use mysql;
    Database changed
    mysql> DELETE FROM user WHERE User='fmuser';
    Query OK, 1 row affected (0.03 sec)
  8. MySQL に障害モニターユーザーとテスト用データベースを追加します。


    # cd /opt/SUNWscmys/util
    

    mysql_config ファイルを編集し、ファイル内のコメントに従います。


    # mysql のインストール場所 (BASEDIR)
    MYSQL_BASE=
    
    # ローカルホストの mysql 管理ユーザー (root)
    MYSQL_USER=
    
    # mysql 管理ユーザー用のパスワード
    MYSQL_PASSWD=
    
    # 構成済み論理ホスト
    MYSQL_HOST=
    
    # 障害モニターユーザーのユーザー名を指定する
    FMUSER=
    
    # 障害モニターユーザー用のパスワードを選ぶ
    FMPASS=
    
    # mysqld のソケット名 (/tmp/<Logical host>.sock)
    MYSQL_SOCK=
    
    # SC3.1 に限り、物理 NIC には物理ホスト名を指定してください。
    # SC3.1 の論理ホスト名は、このリソースグループを置くことができる
    # クラスタのすべてのノードに属します。
    # 例: 論理ホスト lh1 は、物理ノード phys-1 では hme1 に属し、
    # 物理ノード phys-2 では hme3 に属します。hme1 のホスト名は phys-1-hme1、
    # phys-2 の hme3 のホスト名は phys-2-hme3 です。
    # 例: MYSQL_NIC_HOSTNAME="phys-1-hme1 phys-2-hme3"
    MYSQL_NIC_HOSTNAME=""

    注 –

    SC 3.1 上の MySQL インスタンスの例を示します。



    MYSQL_BASE=/global/mysql
    MYSQL_USER=root
    MYSQL_PASSWD=root
    MYSQL_HOST=hahostix1
    FMUSER=fmuser
    FMPASS=fmuser
    MYSQL_SOCK=/tmp/hahostix1.sock
    MYSQL_NIC_HOSTNAME="clusterix1 clusterix2"
    
  9. mysql_config の編集後、mysql_register スクリプトを実行します。


    # ./mysql_register
    
  10. MySQL サーバーを手動で停止します。


    # kill -TERM `cat <MySQL Databasedirectry>/mysqld.pid
    
  11. scswitch —e —j MySQL- resource を使用して、Sun Cluster HA for MySQL リソースを起動します。


    # scswitch -e -j MySQL- resource
    
  12. MySQL Logicalhost を使用して、MySQL インスタンスにローカルにアクセスする管理ユーザーのソースアドレスを変更します。


    注 –

    MySQL インスタンスへのアクセスをソケット (ローカルホスト) からだけにする場合は、この手順を省略します。


    SC3.0U3 を使用していた場合は、論理ホストに属す root ユーザーを削除して、物理ホストに属す admin ユーザーを追加します。


    注 –

    ノード名と物理インタフェースのホスト名が異なる場合は、物理インタフェースのホスト名を使用します。


    次に、SC3.1 での MySQL インスタンスの例を示します。


    # mysql -S /tmp/hahostix1.sock -uroot
    mysql> use mysql;
    mysql> DELETE FROM user where User='root' AND Host='hahostix1';
    mysql> GRANT ALL ON *.* TO 'root'@'clusterix1' IDENTIFIED BY 'rootpasswd';
    mysql> GRANT ALL ON *.* TO 'root'@'clusterix2' IDENTIFIED BY 'rootpasswd';
    mysql> exit;

    注 –

    admin ユーザーに Grant_priv を手動で追加する必要があります。MySQL の管理マニュアルを参照してください。


Sun Cluster HA for MySQL 使用時に MySQL を 3.23.54 から 4.x.x にアップグレードする

ここでは、Sun Cluster HA for MySQL を使用するときに 4.0.12 にアップグレードする方法について説明します。


注 –

ここでは、MySQL を MySQL 4.x.x にアップグレードする方法ではなく、Sun Cluster HA for MySQL を MySQL 4.x.x にアップグレードする方法だけを説明していることに注意してください。この手順では、新しい MySQL バイナリが前回と同じ場所にインストールされていると見なしています。新しいバイナリが新しいディレクトリにインストールされている場合は、新しい MySQL Basedir を使用して MySQL リソースを登録し直す必要があります。


ProcedureMySQL 3.23.54 から 4.x.x へのアップグレード

MySQL 3.23.54 から 4.x.x にアップグレードする手順

手順
  1. scswitch —n —j MySQL- resource を使用して、Sun Cluster HA for MySQL をシャットダウンします。


    # scswitch -n -j MySQL- resource
    
  2. 「MySQL のインストールと構成方法」の手順 3 と 4 に従って、新しいMySQL バイナリをインストールします。

  3. scswitch —e —j MySQL- resource を使用して Sun Cluster HA for MySQL を起動します。


    # scswitch -e -j MySQL- resource
    
  4. scswitch —n –M —j MySQL- resource を使用して、Sun Cluster HA for MySQL の障害モニターをシャットダウンします。


    # scswitch -n -M -j MySQL- resource
    
  5. MySQL のマニュアルに従って、MySQL データベースをアップグレードします。

  6. scswitch —e –M —j MySQL- resource を使用して、Sun Cluster HA for MySQL 障害モニターを起動します。


    # scswitch -e -M -j MySQL- resource