634 views

■実現する機能

データベースサーバーは、サーバー上のデータベースをクライアントから操作できるようにするためのサーバー。WordPressもデータベースを使う必要があるので、ここでは、リレーショナル型データベースのデータベースサーバーであるMySQLの導入手順を紹介します。

■MySQLインストール

[root@ufuso ~]# yum -y install mysql-server ← mysql-serverインストール
Installed:
  mysql-server.x86_64 0:5.1.61-4.el6                                            

Dependency Installed:
  mysql.x86_64 0:5.1.61-4.el6        perl-DBD-MySQL.x86_64 0:4.013-3.el6       

Complete!

■MySQL設定

[root@ufuso ~]# vi /etc/my.cnf ← MySQL設定ファイル編集
[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 ← 追記。文字コードをUTF-8にする

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

■MySQL起動

[root@ufuso ~]# /etc/rc.d/init.d/mysqld start ← MySQL起動
MySQL データベースを初期化中:  Installing MySQL system tables...
OK
Filling help tables...
OK

To start mysqld at boot time you have to copy
support-files/mysql.server to the right place for your system

PLEASE REMEMBER TO SET A PASSWORD FOR THE MySQL root USER !
To do so, start the server, then issue the following commands:

/usr/bin/mysqladmin -u root password 'new-password'
/usr/bin/mysqladmin -u root -h ufuso.dip.jp password 'new-password'

Alternatively you can run:
/usr/bin/mysql_secure_installation

which will also give you the option of removing the test
databases and anonymous user created by default.  This is
strongly recommended for production servers.

See the manual for more instructions.

You can start the MySQL daemon with:
cd /usr ; /usr/bin/mysqld_safe &

You can test the MySQL daemon with mysql-test-run.pl
cd /usr/mysql-test ; perl mysql-test-run.pl

Please report any problems with the /usr/bin/mysqlbug script!

                                                           [  OK  ]
mysqld を起動中:                                           [  OK  ]

[root@ufuso ~]# chkconfig mysqld on ← MySQL自動起動設定

■MySQLデータベース初期設定

[root@ufuso ~]# mysql_secure_installation ← MySQL初期設定
NOTE: RUNNING ALL PARTS OF THIS SCRIPT IS RECOMMENDED FOR ALL MySQL
      SERVERS IN PRODUCTION USE!  PLEASE READ EACH STEP CAREFULLY!


In order to log into MySQL to secure it, we'll need the current
password for the root user.  If you've just installed MySQL, and
you haven't set the root password yet, the password will be blank,
so you should just press enter here.

Enter current password for root (enter for none):  ← ENTERキーを押す
OK, successfully used password, moving on...

Setting the root password ensures that nobody can log into the MySQL
root user without the proper authorisation.

Set root password? [Y/n]  ← ENTERキーを押す
New password:  ← rootパスワードを設定してENTERキーを押す
Re-enter new password:  ← rootパスワードを再度入力してENTERキーを押す
Password updated successfully!
Reloading privilege tables..
 ... Success!


By default, a MySQL installation has an anonymous user, allowing anyone
to log into MySQL without having to have a user account created for
them.  This is intended only for testing, and to make the installation
go a bit smoother.  You should remove them before moving into a
production environment.

Remove anonymous users? [Y/n]  ←匿名ユーザー削除のためENTERキーを押す
 ... Success!

Normally, root should only be allowed to connect from 'localhost'.  This
ensures that someone cannot guess at the root password from the network.

Disallow root login remotely? [Y/n]  ←リモートからのrootログイン禁止のためENTERキーを押す
 ... Success!

By default, MySQL comes with a database named 'test' that anyone can
access.  This is also intended only for testing, and should be removed
before moving into a production environment.

Remove test database and access to it? [Y/n]  ←testデータベース削除のためENTERキーを押す
 - Dropping test database...
 ... Success!
 - Removing privileges on test database...
 ... Success!

Reloading the privilege tables will ensure that all changes made so far
will take effect immediately.

Reload privilege tables now? [Y/n]  ←table再読込みのためENTERキーを押す
 ... Success!

Cleaning up...



All done!  If you've completed all of the above steps, your MySQL
installation should now be secure.

Thanks for using MySQL!

[root@ufuso ~]# mysql -u root -p ← MySQLへrootでログイン
Enter password:  ← rootパスワードの入力
Welcome to the MySQL monitor.  Commands end with ; or g.
Your MySQL connection id is 10
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> exit ← ログアウト

Bye

※mysqlデータベースはシステム管理用のデータベースなので削除しないこと

■MySQL確認

[root@ufuso ~]# mysql -u root -p ← MySQLへrootでログイン
Enter password:  ← MySQLのrootパスワード応答

Welcome to the MySQL monitor.  Commands end with ; or g.
Your MySQL connection id is 19 to server version: 4.1.12

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

mysql> grant all privileges on test.* to centos@localhost identified by 'centospass';
 ← testデータベースへの全てのアクセス権限を持った、新規ユーザcentosを登録
Query OK, 0 rows affected (0.00 sec)

mysql> select user from mysql.user where user='centos'; ← centosユーザ登録確認
+--------+
| user   |
+--------+
| centos |
+--------+
1 row in set (0.00 sec)

mysql> exit ← ログアウト
Bye

[root@ufuso ~]# mysql -u centos -p centospass
 ← centosユーザでMySQLサーバーへログイン
Welcome to the MySQL monitor.  Commands end with ; or g.
Your MySQL connection id is 18 to server version: 4.1.12

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

mysql> create database test; ← testデータベース作成
Query OK, 1 row affected (0.00 sec)

mysql> show databases; ← データベース作成確認

+----------+
| Database |
+----------+
| mysql    |
| test     |
+----------+
2 rows in set (0.01 sec)

mysql> use test ← testデータベースへ接続
Database changed

mysql> create table test(num int, name varchar(50)); ← testテーブル作成
Query OK, 0 rows affected (0.01 sec)

mysql> show tables; ← テーブル作成確認
+----------------+
| Tables_in_test |
+----------------+
| test           |
+----------------+
1 row in set (0.00 sec)

mysql> insert into test values(1,'山田太郎'); ← testテーブルへデータ登録
Query OK, 1 row affected (0.00 sec)

mysql> select * from test; ← データ登録確認
+------+----------+
| num  | name     |
+------+----------+
|    1 | 山田太郎 |
+------+----------+
1 row in set (0.00 sec)

mysql> update test set name='山田次郎'; ← testテーブル内データ更新

Query OK, 1 row affected (0.00 sec)
Rows matched: 1  Changed: 1  Warnings: 0

mysql> select * from test; ← データ更新確認
+------+----------+
| num  | name     |
+------+----------+
|    1 | 山田次郎 |
+------+----------+
1 row in set (0.01 sec)

mysql> delete from test where num=1; ← testテーブル内データ削除
Query OK, 1 row affected (0.03 sec)

mysql> select * from test; ← データ削除確認
Empty set (0.00 sec)

mysql> drop table test; ← testテーブル削除
Query OK, 0 rows affected (0.00 sec)

mysql> show tables; ← テーブル削除確認
Empty set (0.00 sec)

mysql> drop database test; ← データベースtest削除

Query OK, 0 rows affected (0.00 sec)

mysql> show databases; ← データベース削除確認
+----------+
| Database |
+----------+
| mysql    |
+----------+
1 row in set (0.00 sec)

mysql> exit ← ログアウト
Bye

[root@ufuso ~]# mysql -u root -p ← MySQLへrootでログイン
Enter password:  ← MySQLのrootパスワード応答
Welcome to the MySQL monitor.  Commands end with ; or g.
Your MySQL connection id is 21 to server version: 4.1.12

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

mysql> revoke all privileges on *.* from centos@localhost;
 ← centosユーザから全てのデータベースへのアクセス権限を剥奪
Query OK, 0 rows affected (0.00 sec)

mysql> delete from mysql.user where user='centos' and host='localhost';
 ← centosユーザ削除

Query OK, 1 row affected (0.01 sec)

mysql> select user from mysql.user where user='centos';
 ← centosユーザ削除確認
Empty set (0.00 sec)

mysql> flush privileges; ← centosユーザの削除をMySQLサーバーへ反映
Query OK, 0 rows affected (0.01 sec)

mysql> exit ← ログアウト
Bye

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

CAPTCHA


このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください