5 – UbuntuにMySQL5.6をインストール

0

カゴヤ・クラウド/VPS
/GMOクラウドのVPS
/さくらのVPS
にUbuntuをインストール後、MySQL5.6をインストールします。

難しいことは抜きに、とりあえず真似すればインストールできます。

OS:Ubuntu12.04 64bit
※すでにMySQLの違うバージョンが入っている場合はこの方法ではインストールできません。
今回の説明はMySQLが入っていない状態でのインストールを前提としてます。

作業内容

  • MySQLインストール
  • 設定

まずは基本準備

もしAPPAMORが動作しているといけないので、停止後、削除

/etc/init.d/apparmor stop
update-rc.d -f apparmor remove
apt-get remove apparmor apparmor-utils

MySQL5.6のインストール準備のため、グループとユーザーを作成。 

groupadd mysql
useradd -r -g mysql mysql

libaio1 packageのインストール

apt-get install libaio1 -y

ここでは/usr/localにインストールします。/usr/localに移動し、ソースを取得

cd /usr/local
wget -O mysql-5.6.10.tar.gz http://dev.mysql.com/get/Downloads/MySQL-5.6/mysql-5.6.10.tar.gz/from/http://cdn.mysql.com/

解凍し、ディレクトリ名をmysqlに変更します。

tar xvfz mysql-5.6.10.tar.gz
mv mysql-5.6.10 mysql
cd mysql/
chown -R mysql .
chgrp -R mysql .

cmake、make、make install

cmake 
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql 
-DDEFAULT_CHARSET=utf8 
-DDEFAULT_COLLATION=utf8_general_ci 
-DENABLED_LOCAL_INFILE=true 
-DWITH_INNOBASE_STORAGE_ENGINE=1 
-DWITH_EXTRA_CHARSETS=all 
-DWITH_INNODB_MEMCACHED=ON 
-DWITH_READLINE=OFF

make
make install

インストール後の設定

mysql_install_db

chmod 755 scripts/mysql_install_db
scripts/mysql_install_db --user=mysql

いくつかのファイルがrootでできてしまうので、再度mysqlに変更

chown -R root .
chown -R mysql data

起動の準備

cp support-files/mysql.server /etc/init.d/mysql.server

起動して問題がないかどうか確認

/etc/init.d/mysql.server start

問題がなければ、起動スクリプトに登録

update-rc.d mysql.server defaults

コマンド群を使いやすいようにシンボリックリンクを作成

ln -s /usr/local/mysql/bin/* /usr/local/bin/

最終調整

mysql_secure_installation

root@server1:/usr/local/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!

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: <– パスワードを入力
Re-enter new password: <– もう一回パスワード
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] <– 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] <– 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] <– ENTER
… Success!

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

Thanks for using MySQL!

Cleaning up…
root@server1:/usr/local/mysql#

ここまででインストールは完了です。
ただしこのままではMySQL5.6の最大(?)の特徴である、memcacheが有効になってません。

mysql -u root -p
mysql> select version();

mysql> select version();
+———–+
| version() |
+———–+
| 5.6.10 |
+———–+
1 row in set (0.00 sec)

mysql> show plugins;

+—————————-+———-+——————–+—————–+———+
| Name | Status | Type | Library | License |
+—————————-+———-+——————–+—————–+———+
| binlog | ACTIVE | STORAGE ENGINE | NULL | GPL |
| mysql_native_password | ACTIVE | AUTHENTICATION | NULL | GPL |
| mysql_old_password | ACTIVE | AUTHENTICATION | NULL | GPL |
| sha256_password | ACTIVE | AUTHENTICATION | NULL | GPL |
| CSV | ACTIVE | STORAGE ENGINE | NULL | GPL |
| MRG_MYISAM | ACTIVE | STORAGE ENGINE | NULL | GPL |
| MyISAM | ACTIVE | STORAGE ENGINE | NULL | GPL |
| MEMORY | ACTIVE | STORAGE ENGINE | NULL | GPL |
| PERFORMANCE_SCHEMA | ACTIVE | STORAGE ENGINE | NULL | GPL |
| InnoDB | ACTIVE | STORAGE ENGINE | NULL | GPL |
| INNODB_TRX | ACTIVE | INFORMATION SCHEMA | NULL | GPL |
| INNODB_LOCKS | ACTIVE | INFORMATION SCHEMA | NULL | GPL |
| INNODB_LOCK_WAITS | ACTIVE | INFORMATION SCHEMA | NULL | GPL |
| INNODB_CMP | ACTIVE | INFORMATION SCHEMA | NULL | GPL |
| INNODB_CMP_RESET | ACTIVE | INFORMATION SCHEMA | NULL | GPL |
| INNODB_CMPMEM | ACTIVE | INFORMATION SCHEMA | NULL | GPL |
| INNODB_CMPMEM_RESET | ACTIVE | INFORMATION SCHEMA | NULL | GPL |
| INNODB_CMP_PER_INDEX | ACTIVE | INFORMATION SCHEMA | NULL | GPL |
| INNODB_CMP_PER_INDEX_RESET | ACTIVE | INFORMATION SCHEMA | NULL | GPL |
| INNODB_BUFFER_PAGE | ACTIVE | INFORMATION SCHEMA | NULL | GPL |
| INNODB_BUFFER_PAGE_LRU | ACTIVE | INFORMATION SCHEMA | NULL | GPL |
| INNODB_BUFFER_POOL_STATS | ACTIVE | INFORMATION SCHEMA | NULL | GPL |
| INNODB_METRICS | ACTIVE | INFORMATION SCHEMA | NULL | GPL |
| INNODB_FT_DEFAULT_STOPWORD | ACTIVE | INFORMATION SCHEMA | NULL | GPL |
| INNODB_FT_INSERTED | ACTIVE | INFORMATION SCHEMA | NULL | GPL |
| INNODB_FT_DELETED | ACTIVE | INFORMATION SCHEMA | NULL | GPL |
| INNODB_FT_BEING_DELETED | ACTIVE | INFORMATION SCHEMA | NULL | GPL |
| INNODB_FT_CONFIG | ACTIVE | INFORMATION SCHEMA | NULL | GPL |
| INNODB_FT_INDEX_CACHE | ACTIVE | INFORMATION SCHEMA | NULL | GPL |
| INNODB_FT_INDEX_TABLE | ACTIVE | INFORMATION SCHEMA | NULL | GPL |
| INNODB_SYS_TABLES | ACTIVE | INFORMATION SCHEMA | NULL | GPL |
| INNODB_SYS_TABLESTATS | ACTIVE | INFORMATION SCHEMA | NULL | GPL |
| INNODB_SYS_INDEXES | ACTIVE | INFORMATION SCHEMA | NULL | GPL |
| INNODB_SYS_COLUMNS | ACTIVE | INFORMATION SCHEMA | NULL | GPL |
| INNODB_SYS_FIELDS | ACTIVE | INFORMATION SCHEMA | NULL | GPL |
| INNODB_SYS_FOREIGN | ACTIVE | INFORMATION SCHEMA | NULL | GPL |
| INNODB_SYS_FOREIGN_COLS | ACTIVE | INFORMATION SCHEMA | NULL | GPL |
| INNODB_SYS_TABLESPACES | ACTIVE | INFORMATION SCHEMA | NULL | GPL |
| INNODB_SYS_DATAFILES | ACTIVE | INFORMATION SCHEMA | NULL | GPL |
| ARCHIVE | ACTIVE | STORAGE ENGINE | NULL | GPL |
| FEDERATED | DISABLED | STORAGE ENGINE | NULL | GPL |
| BLACKHOLE | ACTIVE | STORAGE ENGINE | NULL | GPL |
| partition | ACTIVE | STORAGE ENGINE | NULL | GPL |
+—————————-+———-+——————–+—————–+———+
43 rows in set (0.00 sec)

まだmemcacheが入ってないことが分かります。

mysql> CREATE DATABASE test;
mysql> quit;

memcache用のテーブルを読み込みます。

mysql -u root -p < share/innodb_memcached_config.sql

もう一度MySQLにログインします。

mysql -u root -p

次にmemcacheを有効にします。

mysql> INSTALL PLUGIN daemon_memcached SONAME 'libmemcached.so';

これで有効になりました。
MySQLから出て、確認します。

mysql> quit;
netstat -tap

稼働中のインターネット接続 (サーバと確立)
Proto 受信-Q 送信-Q 内部アドレス 外部アドレス 状態 PID/Program name
tcp 0 0 *:11211 *:* LISTEN 30862/mysqld
tcp6 0 0 [::]:mysql [::]:* LISTEN 30862/mysqld
tcp6 0 0 [::]:11211 [::]:* LISTEN 30862/mysqld

11211番で起動しているのがわかると思います。

Share.

About Author

Leave A Reply

CAPTCHA