CentOSサーバ構築 MySQLサーバインストール

それでは,オープンソースのリレーショナルデータベース管理システム(DBMS)であるMySQLをインストールします.

CentOSでは,MySQLのサーバ(デーモン)である「mysql-server」パッケージとMySQLのクライアントコンソールである「mysql」パッケージをインストールします.

01. 一般ユーザでログインしている場合は,suコマンドでrootになります(sudoで操作しても良いです).

$ su -

02. yumコマンドで,mysqlとmysql-serverをインターネット経由でインストールします.

# yum install mysql mysql-server

  ※依存するパッケージも合わせて5つほどダウンロードされます.
   「Is this ok [y/N]:」と聞いてくるので「y」を入力してEnterキーを押します.

  ※「Complete!」と出ればOKです.

03. MySQLサーバの設定ファイル「/etc/my.cnf」を書き換えます.
  まずは.オリジナル(既存)の設定ファイルの複製をとっておきます.

# cp -p /etc/my.cnf /etc/my.cnf.ORG

viエディタを使用して,次の文を挿入します.デフォルトの文字エンコーディングを「UTF-8(utf8)」にします.

# vi /etc/my.cnf

[/etc/my.cnf の内容]

[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
user=mysql
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0

character-set-server=utf8  ← 追加

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

[mysql]          ← 追加
default-character-set=utf8  ← 追加

04. MySQLサーバ(デーモン)の自動起動設定を行います.まずは,現在の起動設定状況をチェックします.

# chkconfig --list | grep mysqld
mysqld    0:off     1:off     2:off     3:off     4:off     5:off     6:off

  
すべてのランレベルでoffとなっています.
それではonにしてみます.

# chkconfig mysqld on

再度チェックします.

# chkconfig --list | grep mysqld
mysqld    0:off     1:off     2:on     3:on     4:on     5:on     6:off

ランレベル(2, 3, 4, 5)でonになっています.

05. それではMySQLサーバを手動で起動します.

# /etc/init.d/mysqld start
Starting mysqld:                                           [  OK  ]

06. MySQLのセキュア設定を行います.

# mysql_secure_installation
NOTE: RUNNING ALL PARTS OF THIS SCRIPT IS RECOMMENDED FOR ALL MySQL
      SERVERS IN PRODUCTION USE!  PLEASE READ EACH STEP CAREFULLY!
:
Set root password? [Y/n] ← そのままEnterキーを押す
New password:        ← 指定の新しいパスワードを入力
Re-enter new password:   ← 再度,指定の新しいパスワードを入力
Password updated successfully!
Reloading privilege tables..
 ... Success!

:
Remove anonymous users? [Y/n] ← そのままEnterキーを押す
 ... Success!

:
Disallow root login remotely? [Y/n] ← そのままEnterキーを押す
 ... Success!

:
Remove test database and access to it? [Y/n] ← そのままEnterキーを押す
 - Dropping test database...
 ... Success!
 - Removing privileges on test database...
 ... Success!

:
Reload privilege tables now? [Y/n] ← そのままEnterキーを押す
 ... Success!

Cleaning up...
:
Thanks for using MySQL!

最後,忘れずに一般ユーザに戻ります.

# exit

06. MySQLクライアントツールを使ってMySQLにアクセスしてみます.

$ mysql -u root -p

Enter password:   ← 設定したパスワードを入力
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 10
Server version: 5.1.61 Source distribution
  :

07. ステータスを確認します.

mysql> status
mysql  Ver 14.14 Distrib 5.1.61, for redhat-linux-gnu (i386) using readline 5.1
  
Connection id:          10
Current database:    
Current user:          root@localhost
:
Server version:          5.1.61 Source distribution
Protocol version:     10
Connection:          Localhost via UNIX socket
Server characterset:     utf8
Db     characterset:     utf8
Client characterset:     utf8
Conn.  characterset:     utf8
UNIX socket:          /var/lib/mysql/mysql.sock
:

08. 確認したらとりあえず終了します.

mysql> \q
Bye

09. 少しだけMySQLを扱ってみます.再度,MySQLの管理者であるroot(Linuxシステムのアカウントのrootとは違う)で接続します.

$ mysql -u root -p
Enter password: 
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 11
Server version: 5.1.61 Source distribution

Copyright (c) 2000, 2011, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql>

現在既にあるデータベースの一覧を見てみます.

mysql> show databases;

[出力結果]

+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
+--------------------+
2 rows in set (0.00 sec)

基本的に,コマンドの終わりは「;(セミコロン)」を付けます.

カレントのデータベースを「mysql」に変更します.
「mysql」データベースには,ユーザを管理するテーブル「user」などが含まれています.

mysql> use mysql;
Database changed

SQLコマンドを利用して,そのuserテーブルから,ユーザ名,ホスト名,パスワードを抽出してみます.

mysql> select user, host, password from user;

[出力結果]

+------+-----------+-------------------------------------------+
| user | host      | password                                  |
+------+-----------+-------------------------------------------+
| root | localhost | *F66B049F18EA0009C7322C72A40B329B48F74CFB |
| root | 127.0.0.1 | *F66B049F18EA0009C7322C72A40B329B48F74CFB |
+------+-----------+-------------------------------------------+

1つ新たにデータベースを作成してみます.ここでは「morilab」という名前のデータベースを作成してみます.

mysql> create database morilab;
Query OK, 1 row affected

再度,データベース一覧で確認すると...

mysql> show databases;

[出力結果]

+--------------------+
| Database           |
+--------------------+
| information_schema |
| morilab            |
| mysql              |
+--------------------+
3 rows in set

MySQLサーバとの接続を終了します.

mysql> \q
Bye
$
広告

コメントを残す

以下に詳細を記入するか、アイコンをクリックしてログインしてください。

WordPress.com ロゴ

WordPress.com アカウントを使ってコメントしています。 ログアウト / 変更 )

Twitter 画像

Twitter アカウントを使ってコメントしています。 ログアウト / 変更 )

Facebook の写真

Facebook アカウントを使ってコメントしています。 ログアウト / 変更 )

Google+ フォト

Google+ アカウントを使ってコメントしています。 ログアウト / 変更 )

%s と連携中