解放区在住氷翠 緑の閃光
【解放区在住氷翠】氷翠のお気楽日記

MacでmySQL

2018-05-03

どうも、氷翠です。

前々からやりたいことの一つだった、自分のMacに「mySQL」をインストールする。

ようやくできました。

最終的に「phpMyAdmin」が動けばこっちのものです。

まず、「mySQL」とは何か?
知らない人も見ていると思うので、簡単に説明を。

要はデータの塊なんです。
膨大なデータを一つの命令文で、すぐ検索して結果として出力されるわけです。
それが「データベース」と呼ばれるもの。
通常ではプログラム言語ではなく、問い合わせ言語と呼ばれます。
そのツールの種類として、「mySQL」とか「PostgreSQL」とかがあります。
膨大なデータの塊の中から、特定の結果を取り出すというのは、なかなか時間のかかるものです。

例えば、Googleで検索しますね。その検索結果というのは、データベースの中に保存されている情報なのです。
でも、反応は早い。しかも日本語のサイトだけでなく、英語のサイトとかもあるわけで、その結果がすぐさま見られる。
データベースというツールのなせる技なのです。

氷翠はこのデータベースのツールとして、「mySQL」を好んで使っていますが、Macでは標準ではなく、後からインストールすることになります。
しかも、なかなかできなくて、調べてみて、その手順通りにすすめてもなかなかできませんでした。

そのときの手順です。

まず、「Homebrew」というサイトに行きます。
インストール用パッケージなんですが、これがあれば楽にインストールできるよというものです。

そこで書いてある通り、まず、このパッケージをインストールします。

/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

サイトにも書いてありますが、まずはMacのアプリケーションにある、「ターミナル」を起動します。
氷翠はそこそこ、この「ターミナル」を使うので、ドッグにあるくらいですが、通常アプリケーションフォルダのユーティリティの中にあります。

これでインストールが完了したら、

brew install mysql

というのをターミナルにコピーして実行します。
とりあえず、これでmySQLのインストールが完了します。

mysql.server start

このコマンドでmySQLが起動します。
ここまでは簡単なんですよ。
手順通りにやったら問題はないはずです。なかったんです。

mysql_secure_installation

このコマンドではセキュリティ関連の設定をするよ!ってことらしく、パスワードを入力してって言われます。
このパスワードは後の「phpMyAdmin」でログインするときに使うので、メモしておくといいでしょう。
大英文字小英文字、数字を含めた8文字以上のパスワードとなります。
失敗すると、何度でも入れ直せって言われるので、注意しましょう。
確認のためにもう一度入力してほしいとなるので、同じパスワードを入力して完了です。

今回、「phpMyAdmin」が最終的な目標となるので、サイトから最新版をダウンロードし、それをlocalhostで動くように設置します。

そのままローカルに設置した「phpMyAdmin」にアクセスし、ログインしようとしてもだめです。

「mysqli_real_connect(): (HY000/2002): No such file or directory」

こんな感じのエラーが出てきて、ログインさせてもらえません。
なにがおかしいのか?

「設定ファイル」をいじっていなかった!

ということで、「phpMyAdmin」のフォルダにある「config.sample.inc.php」をその場で複製します。
ファイル名を「config.inc.php」に変更。

次にターミナルに行き、

mysql_config --socket

を入力。
その結果、「/tmp/mysql.sock」とかいうのが出てくるので、そのパスをコピーします。
で、先程の「config.inc.php」を開き、

$cfg['Servers'][$i]['connect_type'] = 'socket';
$cfg['Servers'][$i]['socket'] = '/tmp/mysql.sock';

この2行を追加。
一応、似たようなものが他にないことを確認しておきます。

では、もう一度「phpMyAdmin」にアクセスしてログインしてみると、成功しました。

これで、氷翠としては、やっと次の段階に入れるw

コメントを残す

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