アダルトアフィリエイト実践記

XAMPPでMySQLが起動しない場合の対処方法

 


私はPHPを書籍「基礎からのPHP」で勉強しています。

ようやくデータベースの章に入ったのですが、XAMPPでMySQLが起動しなくて大変な思いをしました。

なんとか解決できましたが、相当無駄な時間を使ってしまったので、備忘録としてシェアさせていただきます。

MySQLを勉強するならXAMPPは最新でない方がいい

XAMPPとは

PHPをテストするのによく登場するXAMPPとは、

Apache Webサーバソフト
MySQL データベース
PHP プログラム言語
Perl(もしくはphpMyAdmin データベース管理ソフト)

これから頭文字をとると「AMPP」。

この環境をLinux版で「LAMPP」、Windows版を「WAMPP」と呼ぶので、総称して「XAMPP」と呼ぶようです。

ローカルでサーバー環境をいっぺんに構築できるソフト。(と言うことでいいのかな(笑))

XAMPPは最新じゃない方が良い

PHPを勉強するには大変便利なXAMPPですが、2015年10月からの最新バージョンではデータベースが「MySQL」から「MariaDB」へ変更になったようです。

PHPの勉強を始めたときはそんなことは全く分からなかったので「最新版の方がいいに決まっている」と思い、XAMPP公式ページから最新版をダウンロードしてきました。

XAMPP

XAMPP Installers and Downloads for Apache Friends

ちゃんと「MariaDB」と書いてありますね^^;。

MySQLとMariaDBは互換性があり、phpMyAdmin上で操作するにはそれほど違いはありません。

ところが、PHPでMySQLを操作したい場合「mysql_connect」のようなMySQLにしか使えないPHPの関数があるので大変困りました。

インストールをやり直してMySQLが起動しない場合の対処法

「さて、困った」といろいろ調べましたが、いかんせんMariaDBに関する情報が少なく、どうにも解決できなかったので、XAMPPの最新バージョンを一旦アンインストールして、「基礎からのPHP」の付属CDの旧バージョンへインストールし直しました。

すると今度は、、、

MySQLが起動しません、、、orz。

「XAMPP MySQL 起動しない」と調べている方が沢山いるようで、調べてみると、

「portの再設定が必要」
「一旦アンインストールしてしまうと前の設定が残ってしまう」

など書かれていて、まったく解決できず、今回ばかりはほとほと困り果てました。

対処法

長くなりましたが私が解決できた方法です。

XAMPP+Windows8.1でMySQLが起動できないときの暫定対処

こちらの記事を参考に、対処したら無事にMySQLが起動しました。

修正したファイルは、

OS(C:)\xampp\mysql\bin\my.ini

です。
(「基礎からのPHP」の場合、P120で修正するファイルです)

そのファイルの28行目当たりの[mysqld]セクションの下部に、

innodb_flush_method=normal #<=追加

を追加したことでMySQLを起動することができました。

[mysqld]
port= 3306
socket = "C:/xampp/mysql/mysql.sock"
basedir = "C:/xampp/mysql"
tmpdir = "C:/xampp/tmp"
datadir = "C:/xampp/mysql/data"
pid_file = "mysql.pid"
# enable-named-pipe
key_buffer = 16M
max_allowed_packet = 1M
sort_buffer_size = 512K
net_buffer_length = 8K
read_buffer_size = 256K
read_rnd_buffer_size = 512K
myisam_sort_buffer_size = 8M
log_error = "mysql_error.log"

innodb_flush_method=normal #<=追加

上記ページより引用

XAMPPのMySQLが起動しなかったのは最新バージョンから旧バージョンへインストールし直したからかなのか、Windows8.1を使用しているからなのか、原因はわかりませんが無事解決できてホッとしました。

まとめ

XAMPPの最新バージョンはデータベースがMySQLではなくMariaDBなので、データベースにMySQLを使用している書籍でPHPを学習する場合は、MySQLが使用されているバージョンのXAMPPをインストールした方が良さそうです。

「基礎からのPHP」にはXAMPPの旧バージョンが付属CDに入っています。

今後はMariaDBが主流になっていくようですが、PHPビギナーにとってはMySQLの方が情報も多く勉強しやすいようです。

私と同じようにXAMPPのMySQLとMariaDBでつまづいている方の参考になれば幸いです。

 

PHP   0

この記事に関連する記事一覧

コメントフォーム

名前

 

メールアドレス

 

URL

 

 

コメント

トラックバックURL: