レンタルサーバー・自宅サーバー設定・構築のヒント
レンタルサーバー・自宅サーバー設定・構築のヒント - レンタルサーバー・自宅サーバーの設定・構築情報を公開しています。

F8

FreeBSDでmysqlをインストール

2010年7月17日 2014年1月15日
freebsd mysql

とりあえず、前回までで、サーバーのインストールの準備ができました。ここから、各サーバーをインストールしていきます。

  1. データベース(mysql)のインストール
  2. phpのインストール
  3. apacheのインストール

と、これだけインストールすれば、joomla!やWordpressなどがインストールできる環境ができます。
まずは、データベース mysqlをインストールしましょう。

mysqlのバージョンを選択する

まずは、バージョンを選択しなければなりません。 FeeBSD 8.0では、以下のmysqlのバージョンがports対応しているようです。

  • 3.23系

    portsディレクトリ

    • /usr/ports/databases/mysql323-client
    • /usr/ports/databases/mysql323-scripts
    • /usr/ports/databases/mysql323-server

  • 4.0系

    portsディレクトリ

    • /usr/ports/databases/mysql40-client
    • /usr/ports/databases/mysql40-scripts
    • /usr/ports/databases/mysql40-server

  • 4.1系

    portsディレクトリ

    • /usr/ports/databases/mysql41-client
    • /usr/ports/databases/mysql41-scripts
    • /usr/ports/databases/mysql41-server

  • 5.0系

    portsディレクトリ

    • /usr/ports/databases/mysql50-client
    • /usr/ports/databases/mysql50-scripts
    • /usr/ports/databases/mysql50-server

  • 5.1系

    portsディレクトリ

    • /usr/ports/databases/mysql51-client
    • /usr/ports/databases/mysql51-scripts
    • /usr/ports/databases/mysql51-server

  • 5.4系

    portsディレクトリ

    • /usr/ports/databases/mysql54-client
    • /usr/ports/databases/mysql54-scripts
    • /usr/ports/databases/mysql54-server

  • 6.0系

    portsディレクトリ

    • /usr/ports/databases/mysql60-client
    • /usr/ports/databases/mysql60-scripts
    • /usr/ports/databases/mysql60-server

ここでは、無難な5.1系でインスールしてみましょう。 もし、どのバージョンが良いか迷ったら、5.1系で良いと思います。

mysqlをインストールする

先で決めたバージョンを、FreeBSDでは、おなじみのportsでインストールします。 ここでは、5.1系をインストールします。

  1. mysqlクライアントのportsディレクトリへ切り替える
    $ cd /usr/ports/databases/mysql51-client
    $ 

  2. mysqlクライアントをインストールする
    $ make WITH_CHARSET=utf8 WITH_XCHARSET=all install clean
          :
          :
          :
    $ 

    ここで指定すべきは、WITH_XCHARSETです。どの文字コードに対応させるかを指定します。
    例えば、UTF8だけで良ければ、 WITH_XCHARSET=utf8 とします。 WITH_XCHARSET=all は、すべての文字コードという意味です。 もし、わからない場合は、WITH_XCHARSET=allで良いと思います。 日本語(+英語)以外に使わないなら、 WITH_XCHARSET=ujis,sjis,utf8 で十分です。さらに、UNICODEは一切使わないなら、最後の”utf8″も削除して良いでしょう。
    ただ、最近では、ほとんどのphp関連ツール(CMSなど)では、通常、”utf8″を使うのが一般的になっていますから、”utf8″は含めておいた方が無難でしょう。


  3. mysqlサーバーのportsディレクトリへ切り替える
    $ cd /usr/ports/databases/mysql51-server
    $ 

  4. mysqlサーバーをインストールする
    $ make WITH_CHARSET=utf8 WITH_XCHARSET=all install clean
          :
          :
          :
    $ 

    ここで指定しているWITH_XCHARSETは、先のクライアントでも指定したものを同じです。どの文字コードに対応させるかを指定します。
    例えば、UTF8だけで良ければ、 WITH_XCHARSET=utf8 とします。


  5. mysqlへperlでアクセスする場合は、p5-DBI,p5-DBDもインストールします。

    ※perlでアクセスする必要がない場合は、インストール不要です。

    1. p5-DBIのportsディレクトリへ切り替える
      $ cd /usr/ports/databases/p5-DBI
      $ 

    2. p5-DBIをインストールする
      $ make BATCH=yes install clean
            :
            :
            :
      $ 

    3. p5-DBDのportsディレクトリへ切り替える
      $ cd /usr/ports/databases/p5-DBD-mysql
      $ 

    4. p5-DBDをインストールする
      $ make BATCH=yes install clean
            :
            :
            :
      $ 

とりあえず、ここまででインストール完了です。 perl以外で、mysqlへアクセスする場合は、別途、インストールが必要な場合があります。 phpについては、別途、phpのインストールの記事で記載します。

もし、Unknown character set ujisのようなメッセージが表示された場合は、mysqlのインストールでWITH_XCHARSETの設定が正しく行えていなかったことが考えられます。
この場合、再インストールが必要になるので、注意しましょう。

mysqlの初期設定を行う

とりあえず、mysqlのインストールが完了したら、次に、mysqlの初期設定を行います。

  1. my.cnfの編集
    1. サンプルのmy.cnfをコピーし、権限を変更し、編集を開始します。
      $ cp /usr/local/share/mysql/my-medium.cnf /etc/my.cnf
      $ chmod 644 /etc/my.cnf
      $ vi /etc/my.cnf

    2. my.cnfの各カテゴリ下に、以下の行を追記します。
      [mysqld]
      skip-character-set-client-handshake
      default-character-set = utf8
      datadir=/home/mysql
      
      [mysql]
      default-character-set = utf8

      【意味】
      skip-character-set-client-handshake : クライアントの文字コードに依存しない
      default-character-set = utf8 : デフォルト文字コードをUTF-8とする
      datadir=/home/mysql : mysqlのホームディレクトリ(mysqlのバイナリデータの格納ディレクトリ)


  2. mysqlのホームディレクトリを作成する
    $ mkdir /home/mysql
    $ chown -R mysql:mysql /home/mysql
    $ 

  3. mysqlサーバーを常時起動するようにrc.confへ追記する
    $ vi /etc/rc.conf
    
    mysql_enable="YES"

    mysql_enable=”YES”を追記します。
    この記述を行うことでりブートしても自動的にmysqlサーバーが起動します。


  4. mysqlサーバーを起動する
    $ /usr/local/etc/rc.d/mysql-server start

  5. mysqlサーバーの基本設定を行う
    1. mysqlサーバーの管理者でmysqlへログインする
      $ mysql -u root
             :
             :
      mysql> use mysql;
      mysql> 

      mysql> のプロンプトが表示されてばOKです。
      以降の説明は、mysql>のプロンプトから、mysqlのsql分を発行して、mysqlサーバーの設定を行っていきます。 そのため、必ず最後に;の文字列を入力することをお忘れなく。


    2. mysqlサーバーの管理者パスワードを設定する
      mysql> set password for root@localhost=password('hogehoge');

      上記では、hogehogeがパスワードになります。


    3. 不要なmysqlのデフォルトユーザを削除する
      mysql> select user,host from mysql.user;
      +------+-----------------+
      | user | host            |
      +------+-----------------+
      | root | 127.0.0.1       |
      |      | localhost       |
      | root | localhost       |
      |      | host.hoge.orz   |
      | root | host.hoge.orz   |
      +------+-----------------+
      5 rows in set (0.00 sec)
      
      mysql> delete from mysql.user where user='';

      最初のselect user … で、現在登録されているユーザをすべて表示しています。
      この中で、userの欄に空白があるものがありますから、この空白のユーザは、まず、削除しておきます。
      delete from mysql.user … で、実際に削除しています。

      ※特に空白のユーザ名がない場合は、この操作は不要です。


    4. mysqlのユーザを追加する
      mysql> insert into user set user="hoge", password=password("hogehoge"), host="localhost";

      hoge@localhostで、hogehogeでログインできるようになります。
      また、他のホストからのアクセスを許可したい場合は、ここで指定している host=”localhost”localhostを変更し、上記のイメージでSQLを発行します。

      例)
      host2.exmapl.com というホストから許可したい場合は、以下のようにすれば良いです。

      mysql> insert into user set user="hoge", password=password("hogehoge"), host="host2.exmapl.com";

      また、このホスト名は、IPアドレスを指定することもできます。
      例えば、ローカルLAN内の”192.158.1.128″からのアクセスを許可したい場合は、以下のようにすれば良いです。

      mysql> insert into user set user="hoge", password=password("hogehoge"), host="192.158.1.128";

    5. データベースを追加する
      mysql> show databases;
      +--------------------+
      | Database           |
      +--------------------+
      | information_schema |
      | mysql              |
      | test               |
      +--------------------+
      3 rows in set (0.00 sec)
      
      mysql> drop database test;
      
      mysql> CREATE DATABASE hogedb;

      最初にshow databases;で、現在登録されているデータベースを確認します。
      この中で、testがあれば、それは、デフォルトで設定されているテスト用のデータベースなので、ここでは、次のdrop database test;で削除しています。
      最後にCREATE DATABASE hogedb;で、hogedbというデータベースを作成しています。


    6. mysqlの新規ユーザが新規データベースを操作できるようにする
      mysql> grant all on hogedb.* to hoge@localhost;

      上記の設定で、hogedbへのフルアクセスをhoge@localhostが行えるようになります。

      以下のようなエラーが発生したら、
      mysql> grant all on hogedb.* to hoge@192.158.1.128;
      ERROR 1133 (42000): Can't find any matching row in the user table
      ほとんどの場合、データが更新されていないので、そんなデータありません・・・みたいなエラーなので、
      mysql> FLUSH PRIVILEGES;
      Query OK, 0 rows affected (0.04 sec)
      
      mysql> grant all on hogedb.* to hoge@192.158.1.128;
      Query OK, 0 rows affected (0.00 sec)
      のようにFLUSH PRIVILEGES を実行してあげてデータを更新してあげるとうまくいくことがほとんどです。お試しを。

    7. 最後に今まで編集したmysqlの情報を更新する
      mysql> flush privileges;

      この作業で、現在動作中のサーバーの情報も更新されます。


こんな感じです。
これで、データベースができましたから、後は、phpとapacheが動けば、wordpressもjoomla!も動かせます。

それに簡単なSQLの勉強も、できますね。

やっぱし、大変と言えば、大変ですよね。好きじゃないとね。

格安レンタルサーバーでは、mysqlを完全に別のサーバーで稼働させることが多いです。
それは、負荷分散のためでもありますし、共有サーバーである以上、mysqlを使う人とmysqlを使わない人で、格差があまり出ないようにもしているんでしょうね。

何度も言いますが、ただブログやホームページを公開したいだけなら格安レンタルサーバーで十分です。
ご利用のブラウザは、広告ブロック(AdBlockなど) が適用となっていませんか?
このサイトでは、コンテンツの一部が非表示、あるいは、コメント、お問い合わせの投稿ができない検索ができないことがあります。


関連記事 :

FreeBSDでmysqlをバージョンアップする

前回、mysqlのインストールを行いました。 今回は、先のインストール手順の続編で、アップデート手順です。 他のサーバー(サービス)のバ ...

Debian (Ubuntu 12) で Dotdeb から最新のPHP , MySQL をインストールする

DebianにもRedHat系と同じようにバイナリパッケージを提供するためのリポジトリがあります。 ただ、CentOSなどと同じように一般的に ...

評判のKDDI クラウドコア(CloudCore) VPS にapache , php , mysql をインストールし、Wordpressを使ってみる (CentOS編)

評判のCloudCore VPSを使うときに最初にやっておきたいこと(CentOS編) の続き・・・で、今回は、評判のKDDI CP ...

mysql5.5系の最新版をインストールする

CentOS 5 の場合、yumを使って デフォルトでインストールされるのは、MySQL5.0系です。 また、CentOS 6 Sc ...

あえてmysql5.1系をインストールする

今回は、MySQLをインストールしてみます。 ただ、CentOS 5 の場合、yumを使って デフォルトでインストールされるのは、MySQL5 ...


4 件 コメントがあります。 コメントを投稿する
  1. ysksn
    2011年11月26日, 11:00 AM

    mysqlの初期設定を行う
    とりあえず、mysqlのインストールが完了したら、次に、mysqlの初期設定を行います。
    my.cnfの編集
    サンプルのmy.cnfをコピーし、権限を変更し、編集を開始します。
    $ cp /usr/local/share/mysql/my-medium.cnf /etc/my.cnf

    ココで質問なんですが、なんでファイルをコピーして編集するんでしょうか?
    元ファイルのアクセス権を変更して編集じゃだめなんですか?

  2. 管理人
    2011年11月26日, 1:43 PM

    ysksn さん、コメントありがとうございます。
    おっしゃるとおり、それでもOKです。
    ここでは、my-medium.cnf というよく使われるサンプル設定ファイルをベースに設定すると楽なので、それを使っています。
    mysqlの設定サンプルには、他にも my-small.cnf などもあります。
    /usr/local/share/mysql/のディレクトリを参照されると良いと思います。

  3. ysksn
    2011年11月27日, 4:02 PM

    お返事ありがとうございます。
    今日もこちらのサイトを参考にFreeBSD楽しくいじってます。

  4. 管理人
    2011年11月28日, 9:20 AM

    ysksn さん、返信ありがとうございます。
    また、何かあったらコメントいただけたらうれしく思います。


コメントを投稿 :

お名前 *

メールアドレス *
( メールアドレスが公開されることはありません。)

サイトアドレス

コメント *

* 印の項目は、入力が必要な項目です。




最近投稿の記事

[ 画像提供元 : Amazon ] 先日、1TBのディスクの入れ替え時にバックアップをとろうとディスクコピーを行いました。 その際 ...

Windows で Linux ファイルシステム Ext4 のディスクをマウントするには? Ext3Fsd が、おそらく、最も簡単なツール ...

今回は、Windows で Compass を使ってみました。 Compass とは、 Sass(サス、Syntactica ...

今回は、Anti Adblock を使ってみました。 Anti Adblock とは、 そもそも Adblock という ウェブ ...

デスクトップ環境でない サーバーで、Webページのキャプチャー画像をコマンドで撮る には、wkhtmltoimage, CutyCapt ...


さくらのVPS 全プラン リニューアルです。(石狩(北海道)も選択可)


root権限ありで ¥685 / 月 ~ と非常にリーズナブルな CPU 1(core)の 512 プランから、 最高 CPU 10(core), メモリ 32(GB), SSD容量 800(GB) までとプランが充実。
ディスクは、SSDとHDDの選択が可能になった他、データセンターは人気の東京、石狩(北海道)となりました。

また、どのプランでも好きなOSが選べます
( CentOS, Fedora, Scientific Linux, FreeBSD, Ubutu, Debian )

管理人もおすすめのVPSです。
試用期間がありますから、一度、お試しを!!

詳しくは、http://vps.sakura.ad.jp/さくらのVPSのサイトへ へどうぞ!!

カテゴリ


Serverman@VPS 完全1ヶ月無料 キャンペーン実施中です。


Serverman@VPS 完全1ヶ月無料 キャンペーン実施中です。
最近、スワップにも対応した Serverman@VPS は、かなりリーズナブルかもです。

  • メモリ1GB~2GBのEntryプラン :月額:490円
  • メモリ2MB~4GBのStandardプラン :月額:980円
  • メモリ4GB~8GBのProプラン :月額:1,980円

新規申し込みで1ヶ月間完全無料となるキャンペーンを実施中です。
Serverman@VPSの特徴は、安さとIPv6対応です。また、初期設定費0円もポイントです。

IPv6でちょっと遊んでみたい方には、おすすめかもしれませんね。最低利用期間もありませんから、気に入らないときは即解約もできます。

Serverman@VPSの詳細については、 http://dream.jp/vps/ Serverman@VPSのサイトへへどうぞ。



KVM採用 ConoHa VPSは、時間単位で借りれる便利なVPSです。


ConoHa VPS は、初期設定費0円最低利用期間無し時間単位で清算可能、 さらに、Web APIを使って自動化を図ることもできる便利なVPSです。

海外サーバー設置も可能で、ローカル接続にも対応と、かなり、機能豊富なサーバーです。

新規ユーザ登録で、クーポンもらえますから、まずは、お試しですね。

ConoHa VPSの詳細については、
http://www.conoha.jp/ へどうぞ。

KVM採用 お名前.com VPS(KVM) 2G プラン 初期設定費無料 キャンペーン 実施です。


メモリ2GBプラン CPU:3core、Disk:200GB
月額:1,153円から (初期設定:1,680円0円)

さくらのVPSがリニューアルされてもなんのその。
1GBメモリ / 2Core を ¥834 – の格安価格で提供中です!
間違いなくスペックからすると割安感ありです。
年間割引時の途中解約で返金がないのは、 ちょっと残念ですが、それでもこの割安感は魅力です。

まずは、お試しですね。

お名前.com VPS(KVM)の詳細については、
http://www.onamae-server.com/vps/ へどうぞ。(お試し期間が15日あります。)



  • ソーシャルブックマーク

  • はてなブックマークへ追加するはてな登録数
ページトップへ
Time : 0.2160 [s]