LinuxにMySQLをインストールする手順
私は2002/12月現在、VineLinux2.6を使っています。以下はこの環境でインストールしていますが、
仕事がらみでRedhat7.3にもインストールしました。Redhatでも同様の方法でインストールできました。
ソースからインストールする方法で書いています。RPMを使ってインストールしてもいいと思うのですが、
MySQLは比較的バージョンUPの頻度が高いので最新バージョンを使いたいという理由で私はこのようにしています。
以下の説明では入力する部分をboldで表示しています。
また、一般ユーザーで操作するところは先頭に「$」、rootで操作するところは「#」を付けています。
- 一般ユーザーでログインしてください。
-
「MySQL X.XX.XX Tarball (tar.gz) 」というのがダウンロード・ページの一番下にありますので、これをダウンロードしてください。
-
以下はコンソールでの操作ですので、Xが起動しているならコンソールを起動してください。
Linux初心者はこのコマンドラインでの操作を嫌う人が多いです(私も最初はそうでした)が、慣れてしまえばたいしたことはありません。
コツは、ファイル名やフォルダ名を指定するところでは、先頭部分だけ入力して「TAB」キーを入力すると簡単です。たとえば、以下の説明では
mysql-X.XX.XXのように、バージョン番号を表記していますが、mysql-まで入力したらTABキーを押してみてください。バージョン番号は自動的に入力されます。
-
ダウンロードしたファイルを/usr/local/srcに移動します。(X.XX.XXはMySQLのバージョンによって変わります)
$ su
# mv mysql-X.XX.XX.tar.gz /usr/local/src
-
解凍します。
# cd /usr/local/src
# tar zxvf mysql-X.XX.XX.tar.gz
-
ファイルのオーナーを変更します。以下のUSERNAMEは自分のログインユーサー名に変えて入力してください。
# chown -R USERNAME. mysql-*
-
ここからは一般ユーザーで操作するので、rootから戻ります。(X.XX.XXはMySQLのバージョンによって変わります)
# exit
$ cd /usr/local/src/mysql-X.XX.XX
-
環境設定をします。
-
トランザクション機能を使う予定なら、以下のようにします。
$ ./configure --with-charset=ujis --with-extra-charsets=all --with-innodb
-
トランザクション機能は使わないなら、以下のようにします。(トランザクションの意味がわからなければ、こちらを選択してください。)
$ ./configure --with-charset=ujis --with-extra-charsets=all
-
コンパイルします。
$ make
なお、私の会社にあるPCでコンパイルしたときはコンパイルに失敗したことがありました。これはかなり古いPCでしたから、一発でコンパイルできないだけのようです。
一発でコンパイルできないときは、何度か make と入力すれば、続きをコンパイルします。
-
インストールします。
$ su
# make install
-
データベースの初期化をします。(これは、新規インストールの時のみ行ってください。バージョンUPするときはやらないでください)
# ./scripts/mysql_install_db
-
mysqlユーザーを作成します。ここではmysqlユーザーでログインできないようにユーザーを作成しています。
# /usr/sbin/groupadd mysql
# /usr/sbin/useradd -g mysql -d /dev/null -s /dev/null -c 'MySQL Server' mysql
-
ここまでのインストール手順ですと、データベースを保存するフォルダは/usr/local/var以下となります。
このフォルダのオーナーを変更します。
# chown -R mysql.mysql /usr/local/var
-
設定ファイルをコピーします。(これは、トランザクションを使わないなら必須ではありません。気が向けばやってください。トランザクションを使うなら必ず必要です。)
# cp support-files/my-medium.cnf /etc/my.cnf
-
設定ファイル(/etc/my.cnf)を編集します。私は次のようにしましたが、この編集はトランザクションを使わないなら絶対に必要というわけではありません。
[mysqld]
# この行を追加
# 日本語のエラーメッセージを表示する
language = /usr/local/share/mysql/japanese/ |
トランザクションを使うなら、以下を変更する必要があります。
# この部分は「#」が付いているので、コメントになっています。先頭の#を削除してください。
innodb_data_home_dir = /usr/local/var
innodb_data_file_path = ibdata1:10M:autoextend
innodb_log_group_home_dir = /usr/local/var
innodb_log_arch_dir = /usr/local/var |
トランザクション機能の初期値はこのようになっていますが、必要なら後から変更してください。本格的にトランザクションを利用されるなら MySQLのチューニングもご確認されたほうがいいかと思います。
-
MySQLサーバーの起動をします。MySQLのバージョンによって起動方法が違うので、以下のどちらかを行ってください。
# /usr/local/bin/safe_mysqld & (MySQL-3.23.xx)
# /usr/local/bin/mysqld_safe --user=mysql & (MySQL-4.xx.xx)
-
動作テストをします。次のように入力するとデータベース一覧表が表示されます。
# mysqlshow
+-----------+
| Databases |
+-----------+
| mysql |
| test |
+-----------+ |
これが表示されればインストールは成功です。
-
PCの起動時に自動的にMySQLサーバーが起動されるようにしておきます。/etc/rc.d/rc.localを編集して、次の行を最後に追加します。これも、MySQLのバージョンによって違いますので注意してください。
MySQL-3.23.xx/usr/local/bin/safe_mysqld & |
MySQL-4.xx.xx/usr/local/bin/mysqld_safe --user=mysql & |
-
現在、rootになっているので、rootから一般ユーザーに戻ります。
# exit
-
MySQLはLinuxのアカウントとは別に、MySQL用のアカウントがあります。
初期状態ではMySQLのrootアカウントにパスワードが設定されていませんのでパスワードを設定しておきます。
次の入力部分で「パスワード」となっているところは、あなたが設定するrootパスワードに読み替えてください。
$ mysql -u root
mysql> set password=password('パスワード');
mysql> exit
|
rootパスワードは絶対に忘れないようにしてください。
MySQLのページ トップへ
|