tweeeetyのぶろぐ的めも

アウトプットが少なかったダメな自分をアウトプット<br>\(^o^)/

【mysql】mysql5.5を使う - ①-1 - バイナリ(tar.gz)インストール

はじめに

mysqlのインストールメモ。
何度もやってるし前も書いてるんですが 入れる一連を改めて書いておこうと思い立っただけのメモの①-1でバイナリでインストール

yumrpmでのインストールはこちらも参考に。
mysqlをyum、rpm、ソースでそれぞれインストール(5.1と5.5)

アジェンダ

  1. mysqlサイトからダウンロードするバイナリのURLを確認
  2. mysqlインストール
  3. mysql内のディレクトリの確認
  4. mysql使う準備

1. mysqlのサイトからバイナリのURLを確認

下記サイトからダウンロードするバイナリURLを確認します。
http://www.mysql.com/downloads/

  • 安定バージョンをインストールするためにDownloads (GA)をクリック
    ※ GA = Generally Available
    f:id:tweeeety:20150611012428p:plain

  • MySQL Community Serverを選択 f:id:tweeeety:20150611012529p:plain

  • 今回は5.5なのでMySQL Community Server 5.5を選択 f:id:tweeeety:20150611012608p:plain

  • セレクトボックスからLinux - Genericを選択 f:id:tweeeety:20150611012649p:plain

  • 64bitのtar.gz版を選択 f:id:tweeeety:20150611012702p:plain

  • わかりにくいが、No thanks, just start my download.がダウンロードリンクなのでリンク先アドレスをコピー
    f:id:tweeeety:20150611012947p:plain

この時点でのリンク先アドレスは下記でした。

http://dev.mysql.com/get/Downloads/MySQL-5.5/mysql-5.5.44-linux2.6-x86_64.tar.gz

2. mysqlインストールの準備

準備として下記を行います

  • mysql用グループ、ユーザの作成
  • mysqlのダウンロード、解凍
mysql用グループ、ユーザの作成
※ グループ作成
$ sudo groupadd mysql

※ ユーザ作成
$ sudo useradd -g mysql mysql
mysqlのダウンロード、解凍

1のmysqlサイトでコピーしたリンクアドレスでダウンロードします。

※ ダウンロード
$ cd /usr/local/src
$ sudo wget http://dev.mysql.com/get/Downloads/MySQL-5.5/mysql-5.5.44-linux2.6-x86_64.tar.gz

※ 解凍
$ sudo tar xvfz mysql-5.5.44-linux2.6-x86_64.tar.gz

※ /usr/local配下に移動
$ sudo mv mysql-5.5.44-linux2.6-x86_64 /usr/local

※ 'mysql'でアクセスするためにリンクの作成
$ sudo ln -sf /usr/local/mysql-5.5.44-linux2.6-x86_64 /usr/local/mysql

※ 確認
$ ls -l /usr/local
lrwxrwxrwx   1 root root   40  6月 11 00:50 2015 mysql -> /usr/local/mysql-5.5.44-linux2.6-x86_64/
drwxr-xr-x  13 root root 4096  6月 11 00:46 2015 mysql-5.5.44-linux2.6-x86_64

3. mysql内のディレクトリの確認

インストールしたmysqlですが中身を確認するとこんな感じになっています。

$ tree /usr/local/mysql -d -L 1
/usr/local/mysql
├── bin ............ コマンド類
├── data ........... データやログ
├── docs ........... ドキュメント
├── include ........ ヘッダーファイル
├── lib ............ ライブラリ
├── man ............ マニュアル
├── mysql-test ..... テスト用スクリプト
├── scripts ........ データベース初期化用のmysql_install_dbスクリプト
├── share .......... エラーメッセージのファイル、各キャラクタセットのファイル
├── sql-bench ...... ベンチマークツール
└── support-files .. 起動・停止用スクリプト、my.cnfサンプルとか

4. mysql使う準備

使う準備は下記を行います

  • ディレクトリの所有権を変更
  • データベースを初期化
ディレクトリの所有権を変更
$ cd /usr/local/mysql
$ sudo chown -R mysql:mysql .
データベースを初期化
$ cd /usr/local/mysql
$ sudo ./scripts/mysql_install_db --user=mysql
sudo ./scripts/mysql_install_db  --user=mysql
Installing MySQL system tables...
150611  1:19:31 [Note] ./bin/mysqld (mysqld 5.5.44) starting as process 26099 ...
OK
Filling help tables...
150611  1:19:31 [Note] ./bin/mysqld (mysqld 5.5.44) starting as process 26106 ...
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:

./bin/mysqladmin -u root password 'new-password'
./bin/mysqladmin -u root -h tk2-223-21094.vs.sakura.ne.jp password 'new-password'

Alternatively you can run:
./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 . ; ./bin/mysqld_safe &

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

Please report any problems at http://bugs.mysql.com/

補足

yummysqlをインストールしていたりするとこんな感じで失敗することがあります。

$ sudo ./scripts/mysql_install_db  --user=mysql
Installing MySQL system tables...
150611  1:17:16 [Note] ./bin/mysqld (mysqld 5.5.44) starting as process 26012 ...
ERROR: 1007  Can't create database 'performance_schema'; database exists
150611  1:17:16 [ERROR] Aborting

150611  1:17:16 [Note] ./bin/mysqld: Shutdown complete


Installation of system tables failed!  Examine the logs in
/var/lib/mysql for more information.

・・・省略・・・

この場合はyumで入れたmysqlを消してから行うとうまくかも?

$ sudo yum remove mysql
$ sudo yum remove mysql-server
$ sudo yum remove mysql-libs

おわり

バイナリから入れましたがスムーズにいけば瞬殺レベルだと思います。