@YMC RENTAL SERVER SERVICE お知らせお問い合せ各種申請
YSシリーズ マネージドサーバー カスタムサーバー その他のプラン お問い合せ 各種申請
 カスタムサーバー

MySQL のインストールについて

CentOS 4.4 では、MySQL のバージョン 4.1 系に対応しております。
初期状態では、お申込み時に指定されたバージョンがインストールされておりますので、通常はインストール作業をせずにご利用いただけます。

※ 標準以外のバージョンに対しては、お客様側でご対応ください。

対象

  • カスタムサーバープラン

インストール手順

1. サーバーへのログイン

データベースサーバーのインストールには、root 権限でのコマンドライン作業が必要となります。
SSH による作業について」のページをご覧になり、サーバーにログイン後 root 権限に切替えてください。

2. MySQL のインストール

MySQL のインストール作業には root 権限が必要となりますで、su コマンドで root に切替えた後に下記を参考に作業を行ってください。
また、初期設定状態からサーバーの設定を変更されている場合には、この手順ではインストールができない場合がございます。

作業内容

  1. yum コマンドで必要なパッケージをインストールする
    yum install -y mysql-server
  2. MySQL サーバーを実行する
    service mysqld start

実行例

[root@www ~]# yum install -y mysql-server
Setting up Install Process
Setting up repositories
・・・中略・・・
Installed: mysql-server.i386 0:4.1.20-1.RHEL4.1
Dependency Installed: perl-DBD-MySQL.i386 0:2.9004-3.1
Complete!
[root@www ~]# service mysqld start
Initializing MySQL database:                               [  OK  ]
Starting MySQL:                                            [  OK  ]
[root@www ~]#

※ インストールされるバージョン等は実行例と異なる場合があります

3. MySQL のパスワード設定

インストール直後の MySQL はパスワードが設定されていません。かならず、パスワードの設定を行ってください。

作業内容

  1. mysqladmin password コマンドで新しいパスワードを設定する
    newpassword には英数字の混在したわかりにくいパスワードを入力してください
    mysqladmin -u root password 'newpassword'
    mysqladmin -u root -h `hostname` password 'newpassword'
  2. mysql コマンドで MySQL に接続できるか確認する
    mysql -u root -p

実行例

[root@www ~]# mysqladmin -u root password 'newpassword'
[root@www ~]# mysqladmin -u root -h `hostname` password 'newpassword'
[root@www ~]# mysql -u root -p
Enter password:
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 5 to server version: 4.1.20

Type 'help;' or '\h' for help. Type '\c' to clear the buffer.

mysql> exit
Bye
[root@www ~]#

問題なくログインができれば、MySQL のインストールは完了です。
MySQL のご利用に関しては、「MySQL 4.1 リファレンスマニュアル」をご覧ください。

MySQL 活用メモ

自動起動設定について

インストールした状態では、サーバーの再起動時の自動起動設定が行われておりません。
chkconfig コマンドを利用して自動起動設定を行うことで、サーバーの再起動時にも MySQL の自動起動を行うことが可能になります。

作業内容

chkconfig mysqld on

MySQL 3.x 系との互換性について

CentOS 4.3 では、MySQL のバージョン 4.1 系を採用しています。そのため、文字コードの自動変換などの高度な多言語処理が可能となっておりますが、多くの環境で使われております旧バージョン 3.x 系との互換性が損なわれています。

MySQL 4.1 以降に対応していないプログラムを利用する場合(例:EUC-JP の場合)、

  1. データベース作成時にキャラクターセットを指定する
    CREATE DATABASE `sample` DEFAULT CHARACTER SET ujis;
  2. MySQL 接続後に「SET NAMES キャラクターセット;」を実行する
    SET NAMES ujis;

のような修正を行うことで、問題なく利用することができるようになることがほとんどですので、データベースの作成やプログラムの修正をお試しください。

また、MySQL 3.23.58 へのバージョン変更を行うことも可能です。詳しくは、「MySQL のバージョン変更について」をご覧ください。

PHP から利用するには

標準では perl DBI モジュールはインストールされますが、PHP モジュールはインストールされません。PHP から MySQL をご利用になられる場合には、yum コマンドで追加のパッケージをインストールする必要があります。
上記作業に続き、root 権限で以下の作業を行ってください。

作業内容

  1. yum コマンドで必要なパッケージをインストールする
    yum install -y php-mysql
  2. httpd サーバーを再起動する
    service httpd restart

実行例

[root@www ~]# yum install -y php-mysql
Setting up Install Process
Setting up repositories
・・・中略・・・
Installed: php-mysql.i386 0:4.3.9-3.12
Complete!
[root@www ~]# service httpd restart
Stopping httpd:                                            [  OK  ]
Starting httpd:                                            [  OK  ]
[root@www ~]# 

※ インストールされるバージョン等は実行例と異なる場合があります

phpMyAdmin のご利用について

MySQL をより手軽に管理・運用するには、phpMyAdmin のご利用をおすすめします。
phpMyAdmin はウェブから MySQL を操作でき、データベースの作成からデータの閲覧・編集までほとんどの作業を行うことができます。

phpMyAdmin はインストール済みですが、誤って削除された場合などは再インストールが必要です。phpMyAdmin のインストールガイドは、「phpMyAdmin のインストールについて」を参考にしてください。

データベースと権限について

MySQL ではアプリケーションごとにデータベースを作成し利用することができます。また、データベースにアクセスするための権限も細かく設定が可能です。
ご利用になるアプリケーションごとに接続ユーザーを設定し、特定のデータベースやテーブルに対してのみ利用可能な権限を設定することによって、アプリケーションが攻撃を受けた際の影響を低くすることが可能になります。

接続ユーザーの作成・権限の設定は GRANT/REVOKE コマンドでも設定可能ですが、phpMyAdmin を利用することで簡単に確認・設定ができます。コマンドでの設定に関しては、「MySQL リファレンスマニュアル」を参考にしてください。

ネットワーク接続の拒否について

標準のインストールでは、ネットワークからの接続も許可された状態になっています。
しかしながら、ウェブアプリケーションでの利用のみでしたら、ネットワーク接続(TCP/IP 接続)を利用せずに UNIX ソケットを利用した接続のみでのご利用をお勧めいたします。UNIX ソケットのみを利用することにより、外部から直接 MySQL を攻撃されることから防ぐことが可能になります。

作業内容

  1. /etc/my.cnf に「skip-networking」を追加する
  2. MySQL を再起動する
    service mysqld restart

/etc/my.cnf の修正例

[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
# Default to using old password format for compatibility with mysql 3.x
# clients (those using the mysqlclient10 compatibility package).
old_passwords=1
skip-networking

[mysql.server]
user=mysql
basedir=/var/lib

[mysqld_safe]
err-log=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid



Copyright (c) GMO GlobalSign Holdings K.K. All Rights Reserved.