WindowsでPHP開発環境を作る

Windows OSインストールがずいぶん楽になってLinuxインストールはずいぶんハードルが高くなった気がします。久しぶりにインストールしてみて試行錯誤に日にちがかかりました。最近はプログラミングにMACを使用することがスタンダードになってきていましてWindowsのXAMPPとかMAMPというサーバー環境を丸ごとエミュレートしたソフトでの説明もMAC環境の方が多くなっています。Windowsでもコマンドプロンプトで同じように行えますけれど説明画面がどうしてもMAC前提でされているのとでは微妙に違いがあって違和感を感じながら説明を見る事が多くなります。

MACを購入してしまうのも手ですがサーバー環境を手にするには先にあげたXAMPPとかMAMPという無料ソフトの他にも手段があります。LinuxのOSを仮想環境で構築できるものにVirtualBox、Docker、VMwareがあります。選択肢が広がっています。ここではVMwareでCentOSをインストールしてLAMP環境、L(Linux)、A(Apache)、M(MySQL)、P(PHP)をインストールしていきます。VMwareは個人利用で商用利用しなければ無料で利用できます。非営利目的での利用の場合のみ無償で使用できます。

目次

Windows10にVMware Workstation 15 Playerをインストール

VMwareサイトのダウンロード手順
VMwareのウェブサイトからダウンロードをクリックします。

VMwareサイトのWorkstation Playerをクリックしている画像
無償製品のダウンロードの中のをクリックします。

VMware Workstation Player15のダウンロードをクリックしている画像
VMware Workstation PlayerにはWindows用とLinux用があります。今回はWindows用のダウンロードボタンをクリックしてダウンロードします。

VMwareをインストール01
Windows PCにダウンロードされたVMwareインストールexeファイルをダブルクリックしてインストールを開始します。

VMwareインストールウィザード告知画面
VMware Workstation 15 Playerのインストールウィザード告知画面が表示されたら「次へ」をクリックします。

VMwareインストール使用許諾契約書の画面
使用許諾契約書が表示されるので「使用許諾契約書に同意します(A)」のチェックボックスにチェックを入れると「次へ(N)」ボタンが表示されるのでクリックします。

VMwareインストールで拡張キーボードドライバのインストール
拡張キーボードドライバという意味じたい分からないのですが、VMwareにLinuxをインストールした際にそのキーボード操作でキーを押した時にWindows側のショートカットキーと一致した場合にWindows側が反応してしまいVMware内のLinux側が反応しないことがあるので拡張キーボードドライバをインストールすることでVMware内のLinuxでも有効とすることができるようです。インストールしておくことにします。

VMwareのユーザーエクスペリエンスの設定画像
起動時に製品の更新チェックとVMware使用する私たち側のレスポンスをVMware側に返すカスタマーエクスペリエンス向上プログラムに参加するかどうかの意思を決めて「次へ(N)」をクリックします。

VMwareのショートカットキーを選択する画像
VMwareのショートカットをデスクトップ、スタートメニューへ作成するか選択して「次へ(N)」をクリックします。

VMwareインストール
インストールボタンをクリックします。

VMwareのインストール完了画像
無償ソフトウェアですのでこれでインストール完了です。「完了」をクリックします。PCの再起動を求められるので再起動します。

スタートメニューのVMwareショートカットをクリックしている画像
Windows再起動後、スタートメニューにVMware Workstation 15 Playerのショートカットが作成されているのを確認しクリックして起動させます。

VMware起動時の確認画像
初回起動時にVMware Playerを無償で利用するにあたり非営利目的であるとの確認画面が表示されます。「続行」ボタンをクリックします。

VMware起動設定が完了画像
これでVMware Workstation 15 Playerインストールから起動までの設定が終了しました。「完了(F)」ボタンをクリックします。

VMware Workstation 15 Playerが起動している画像
VMware Workstation 15 Playerが起動しました。これにLinuxやWindowsのOSを組み込むと今使っているWindowsPCでは無く組み込まれたOSとして稼働している仮想化が可能となります。

VMwareにCentOS7をインストールします

CentOSをダウンロード

CentOSをVMwareにインストールするためにはDVDメディアの形式としてのISOイメージが必要です。CentOSの入ったDVDがついた書籍などがその例ですけれどCentOSのダウンロードページには最初からISOイメージとしてダウンロードできるようになっていてそのままダウンロードして利用できます。

CentOSのダウンロードページからDVD ISOをダウンロードしている画像
CentOSのダウンロードページのDVD ISOとあるボタンをクリックしてダウンロードします。

CentOS7のisoファイルをダウンロードした画像
ローカルにCentOS7の64ビットisoファイルがダウンロードできました。

VMwareにCentOS7をインストールします

WindowsのOSはインストールファイルを実行してしまえば設定はさほどありませんがLinuxはかなり用途によってインストールするファイルも異なります。さらに仮想環境ですからあまり全部インストールしてしまうとメモリやHDDの余裕を圧迫して重くなってしまいます。HDDに余裕があるのならとりあえず気になる物は一応入れてみて重くなったらもう一個別に仮想イメージを作成することができます。複数個のLinux仮想化もWindowsサーバーをさらに仮想イメージとして導入してどのゲストOS(作成した仮想イメージ)を起動させるか選択する事もできるのがVMware利用での強みです。

VMware Workstation 15 Playerで新規仮想マシンの作成をクリックしている画像
ゲストOSとしてCentOS7をVMwareにインストールしていきます。起動させたVMware Workstation 15 Playerの「新規仮想マシンの作成(N)」をクリックします。

VMwareで新規仮想マシン作成ウィザードが表示した画像
画像では私のPCにはCentOS6のDVDディスクが挿入されていたので検出されていますが、これは今回はインストールしません。紛らわしくてすいません。ダウンロードしたCentOS7の方をインストールします。簡易インストールでは無く設定しなからインストールするので一番下の「後でOSをインストール」を選択します。

VMwareで後でOSをインストールを選択して「次へ」をクリックしている画像
後でOSをインストール」を選択して「次へ(N)」をクリックします。

VMware Workstation 15 PlayerでLinuxのCentOS7 64 ビットを選択している画像
VMwareではあらかじめゲストOSの選択肢にLinuxがあるのでチェックします。
さらにバージョンのドロップダウンメニューにこれからインストールするCentOS7 64ビットが選択肢があるので選択します。

VMwareの新しい仮想マシン ウィザードで「次へ」をクリックしている画像
ゲストOSにLinux、バージョンをCentOS7 64ビットと選択できたら「次へ(N)」をクリックします。

VNwareで新しい仮想マシンの名前を設定して「次へ」をクリックしている画像
ゲストOSのプログラムデータがDocuments内に作成される「Virtual Machines」フォルダ内にOSプログラムが挿入されていきます。作成場所を変更したい場合には「参照(R)…」から変更可能です。場所を決めましたら「次へ(N)」をクリックします。

VMwareディスク容量の指定で「次へ」をクリックしている画像
ディスク最大サイズと仮想ディスクを単一ファイルとするか複数ファイルに分割するかの選択が可能です。
今回はあまり多くを組み込むわけでも無いですしそのまま「次へ(N)」をクリックしました。お使い用途やPCの余裕によって決めます。

VMwareの新しい仮想マシン ウィザードで「ハードウェアをカスタマイズ」をクリックしている画像
このままの設定でも大丈夫ですがPCに余裕があるのならもう少しLinux側に割り当てても大丈夫です。その場合は「ハードウェアをカスタマイズ(C)…」をクリックします。

VMwareでハードウェアをカスタマイズボタンをクリックした時の表示画像
メモリの割り当てが標準で1GB、プロセッサが1となっていますが少し割り当てを増やしてみました。このあたりはお使いのホスト側のPCの性能との兼ね合いとLinuxに組み込むソフトやGUIを導入するかによります。そこまで深刻に考える必要は無いと思いますがメモリは私のWindowsPCは余裕があるので2GBにしました。

VMwareで自動検出から変更する画像
メモリとプロセッサは変更しなくても構わないですけれどCentOSインストールにCDRomかDVDメディアを使用しないでダウンロードしたisoファイルでインストールする場合には変更が必要です。こちらは必ず設定する必要があります。このままですとCDやDVDドライブにCentOSのインストールファイルを自動検出できないとエラーになってしまいます。

「ISOイメージファイルをしようする(M):」の「参照」ボタンをクリックしてダウンロードしておいたCentOSのisoファイルを指定します。

CentOsのISO イメージを選択している画像
「参照」ボタンから先ほどダウンロードしておいたCentOS7の64ビットisoファイルを指定して「開く」をクリックします。

ISOイメージファイルを使用するを赤く囲んだ画像
これでインストール設定ができたので「閉じる」ボタンをクリックします。

VMwareでメモリとプロセッサを増やして設定して完了ボタンを赤く囲んだ画像
PCに余裕があるのでメモリとプロセッサを増やしてみましたがCentOS6を使用した時に確か以前にはメモリ2GBの設定をしていたのとプロセッサは私のwindowsPCはi7プロセッサで余裕があったので増やしただけです。これが必要というわけではありません。「完了」ボタンをクリックします。

この設定は「完了」ボタンを押して登録した「CentOS7 64ビット」を右クリックして再度変更可能ですから深刻に考える必要はありません。
VMware Workstation 15 PlayerでCentOS 7 64ビットを右クリックした画像
右クリックして再度メモリやプロセッサなど割り当て変更が可能です。

これでVMwareにCentOS7 64ビット」が登録されて設定が終わったかと言うとまだこれから設定やインストール作業があります。
ここまではVMwareへどのような設定でインストールするのか設定しただけで実際のインストールへと移ります。

VMwareのCentOS7 インストール開始

VMwareで仮想マシンの再生(L)をクリックしている画像
ここからまだ設定がいろいろあります。ここからがCentOSセットアップの本番です。まず「仮想マシンの再生(L)」をクリックします。

CentOSインストールの最初の画面01
CentOS7のインストールが始まります。ダウンロードしたisoファイルですからテストすることも無いと思うので「Enter」押して進みます。

CentOSインストールの最初の画面02
「Press the <Enter> key to begin the installation process.」インストールを進めるために「Enter」押して進むと次々インストールされていきます。
基本左側にOK表示ですが私の場合1回赤いNGらしき表示もありました。速くてわかりませんでしたが気にせず進めます。

CentOSインストールの画面03
Linuxnでの使用する言語を日本語に設定します。もちろん英語のままで良いはデフォルトのEnglishのままでも大丈夫です。「続行」をクリックします。

CentOS7のインストールの概要画像
「インストールの概要」が表示されます。ここで細かな設定をしていきます。

VMware Workstation 15 PlayerでCentOS7のインストールの概要設定ネットワークとホスト名
まずは大事なネットワーク設定です。Windows側でインターネットに接続できている状態にしておきまいてシステム項目にある「ネットワークとホスト名(N)」をクリックします。

VMware Workstation 15 Playerでethernetのオフをクリックしている画像
Ethernet(ens33)となっているところの右側がオフになっているとネット接続が有効になっていません。これをクリックします。

CentOS7のEthernetが接続された状態の画像
「オン」になっているのを確認します。

VMware Workstation 15 Playerのネットワーク設定をして「完了」をクリックしている画像
接続できたら「完了」をクリックします。

CentOS7でソフトウェアの選択をクリックしている画像
用途別のパッケージに分かれているのでインストールするパッケージを選択します。

CentOS7で最小限のインストールと開発ツールを選択して完了ボタンをクリックしている画像
私はLinuxでPHP開発環境を整える用途目的ですからVMwareでの仮想環境を作成します。常時稼働させるわけでも実用サーバーとして日夜稼働させるわけでもないので、「最小限のインストール」と「開発ツール」を選択しました。

VMwareでCentOS 7インストールの概要で「インストール先」をクリックしている画像
「インストール先」にクオテーションマークが着いているのでクリックして確認します。「インストール先」をクリックします。

CentOSでインストール先の変更をするときの表示画像
パーティションの切り分けなどを本格的にLinux利用する場合は標準の自動構成からここで自分で構成できるので利用用途とHDD、SSDなどの領域によって手動構成するためにクオテーションマークがついていたのかもしれません。ただ仮想環境でPHP環境を作成してみるだけですので特に変更しないでここではそのまま自動構成にして何も変更しないで「完了」をクリックします。利用用途を広げる予定でもある場合は下の「追加の空き領域をりようできるようにする」にチェックを入れておくといいかもしれません。何も利用用途は無いのと20GBもあれば十分なのでここもデフォルトのままにしました。左上の「完了」ボタンをクリックするの元の「インストールの概要」に戻ります。

VMwareのCentOS 7のインストール開始ボタンをクリックしている画像
ここでインストールを再度行っていくわけですが、インストールの開始」ボタンをクリックする前にrootパスワード8文字とユーザー名とユーザーパスワードを決めて忘れないようにメモ帳か何かにメモしておきます。仮想環境とは言えネット接続するので強固なパスワードの方が安全です。
「インストールの開始」ボタンをクリックします。

ROOTパスワードの設定

CentOS7のインストール中のrootとユーザー設定をしている画像
インストールしていると設定画面が表示されます。ここではまず「ROOT パスワード」をクリックします。

CentOSのrootパスワード設定している画像
rootパスワード設定画面が表示されます。rootパスワードは文字数の長さと英数字を両方入れる事で良好表示になります。下にある「確認」の方にも全く同じ英数字を入力して左上の「完了(D)」ボタンをクリックします。

CentOSでrootパスワード設定をしている画像
rootパスワードを設定すると「rootパスワード設定されています」とマウスオン表示がされます。

ユーザーの作成はPHP環境を作成してテストする場合に必ずしも必要なわけでも無いですが、長く使う場合にはセキュリティを考えて作成しました。フルネームとユーザー名と名前は二つ必要です。同一にしても可能です。もちろんパスワードも必要です。事前にメモして用意しておきましょう。

CentOS7でroot以外のユーザーを作成している画像
右側の「ユーザーの作成(U)」をクリックします。

CentOS7でユーザーの作成画面
フルネームとユーザー名とパスワードを記入します。
インストール中にユーザー設定を行います。

CentOS7がインストールされたときの画像
設定もインストールも終わると再起動を求められますので再起動します。

CentOS 7 にrootでログインして設定

CentOS7で最初にrootログインしている画像
再起動すると「localhost login:」という表示が出ます。設定にはrootユーザー権限が必要となることが多いので「root」と入力します。

すると「Password:」という表示がでます。ここで設定したrootのパスワードをメモしておいたと思うので間違えないように入力します。
パスワードは画面には表示されませんが打ち終わったらEnterキーを入力すると「[root@localhost ~]#」と表示されます。
rootでログインできているという表示です。

セキュリティ設定の変更

firewalldの設定確認

VMwareはバーチャル環境とはいえインターネットにつながった環境です。バーチャルとは言え、CD or DVDドライブなどメディア操作もできるわけですから、ネットを通じてのメディアアクセスや、PC操作も技術的には可能ですからセキュリティ対策は必要です。
centOS7にはデフォルトで「firewalld」「SELinux」というセキュリティ機能が装備されています。
常時稼働させるサーバー使用となるとセキュリティとして万全なわけではありませんが、ただ個人使用でPHP開発テストだけしたい場合にはあまりセキュリティを強くしても使用するのは私だけなのでここでは、利用目的に合わせていろいろセキュリティを弱めていきます。

CentOS7にはデフォルトで「firewalld」というファイヤーウォールが設定されています。あらかじめ確認しておきます。

linux_CentOS7でfirewalld確認コマンド
デフォルトの「firewalld」の仕様を調べます。「cmd 」の後ろにスペースがあって「-」が二つ続いて「list-all」と入力したら「Enter」キーを押します。

CentOSでのfirewalld初期設定確認画像
「services:」の後ろに解放されているポートが表示されます。デフォルトではsshとdhcpの2つが解放されています。ブラウザからアクセスできるようにhttpとhttpsも解放します。

firewalldでhttpとhttpsのポート開放設定
httpとhttpsポートの開放設定します。「success」と表示されるのを確認します。
(一応説明しておくとキーボードの「↑」を押すと直前入力したコマンドをさかのぼれるので「http」を弱めたら次は「↑」でそのコマンドを表示させて末尾に「s」を足すだけです。)


CentOS7でfirewallの設定を表示させている画像
デフォルトでは「ssh」「DHCP」での通信を許可しています。
firewalldでhttpのポート開放設定
firewalldでhttpsのポート開放設定
二つの設定が「http」「https」が通信許可設定です。

firewalldでreloadして設定確認している画像
「http」「https」の通信許可設定をしたらその設定を固定化する「reload」設定をします。
画像の一番上の設定です。

「success」と表示されたら確認のためlinux_CentOS7でfirewalld確認コマンドとしてEnterを押すと、「services:」にssh とDHCPに加え、設定したhttpとhttpsが表示されているのを確認します。

SELinux無効化

SELinuxはセキュリティを守る用途として機能していますが、ローカルにPHP開発環境を作成して一人で管理してroot、ユーザー全てを使用しているだけなので管理すべき人も自分なので自分のCentOS使用制限をしても意味はありません。自分で制限のある状態で使用を確かめる場合はユーザー作成してその権限範囲で使用すれば良いわけですから。とは言えSELinuxは標準装備されていますからその動作を確認したい場合は無理にSELinuxを無効化する必要はありません。ここでは設定を楽にしたいですし、実際のサーバーとして複数の人と稼働させるわけでも無いので無効化します。一時的にSELinuxを無効化設定するのではなく、無効化設定を保存して恒久的に無効設定を保存して使えなくします。

CentOS7でSELinux設定確認している画像
viの後ろにスペースがあることに注意してください。スペースのあとに「/etc/selinux/config」と入力したらEnterキーを押します。

i」キーを入力してviをインサート(挿入)モードにします。

CentOS7でviをINSERTモードに変更した画像
最下部が「– INSERT –」か「– 挿入 –」と表示されたらOKです。

CentOS7でSELinux有効設定を確認している画像
ほとんどコメントアウトされています。真ん中あたりにコメントアウトされていないラインがあります。
コメントアウトされていない「SELINUX=enforcing」がSELinuxが有効化されている設定です。これを変更します。

CentOS7でSELinuxを有効設定している画像
「SELINUX=enforcing」とあったenforcingをdisabledに変更しまず。つまり「SELINUX=disabled」という設定は無効化設定です。
入力変更確認したら「Esc」キーを押します。

viのINSERT表示が消えた時の画像
「挿入モード」から「コマンドモード」になります。

変更を有効化するためにファイルを保存します。

CentOS7のviでファイルを保存している画像
:w」を入力してEnterキーを押します。

CentOS7でviファイルの保存した時の画像
SELinux設定ファイルが保存された時の表示です。ただ設定はこれでもまだ変更されません。保存した内容を有効化するためにはCentOSを再起動する必要があります。

CentOS7でviを終了している画像

viをまず終了します。「:q」を入力してEnterキーを押します。

viを終了してrootとしてログインしている状態に戻った時の画像

viを終了してrootでログインしている元の状態に戻ります。SELinuxを無効化設定したので再起動して有効化します。

CentOS7で再起動コマンドrebootを入力した画像
rootでログインしている状態で「reboot」コマンドで再起動します。

CentOSでSELinuxの設定確認している画像
再起動したらSELinuxは無効化されています。一応確認してみます。「getenforce」と入力すると「Disabled」と表示されましたら無効化されています。

「Enforcing」と表示されましたら無効化されていません。有効状態です。

CentOSを最新の状態にしておく

Windowsのように常にOSはセキュリティについてのアップデートデータをインストールしておく必要があります。Windowsのようにアップデートを自動的にアップデートしてくれないので自分で定期的に行います。

yum updateを行っている画像
rootログイン状態から「yum update」と入力して「Enterキー」を入力するだけでCentOSがネットから最新アップデートを調べてくれます。

CentOS7でyum updateしている画像
最新アップデートの数字が表示されて「Is this ok [y/d/N]:」と表示されます。ここで「Yキー」を入力し「Enterキー」を入力します。
ダウンロードされていきます。

yum update成功した時の画像
「Complete!」と表示されて元のrootログイン表示に戻ります。これが出たら無事アップデートできたという表示になります。

CentOS 7にApacheをインストールする

Apacheを確認する

apacheの確認をしている画像
Apache httpdは公式リポジトリで提供されているのにyum info~で確認出来ます。「yum info httpd」と入力すると情報が表示されます。

CentOS7でApacheをyum infoで表示させた画像
httpd 2.4が確認できました。

Apacheをインストール

apacheをインストールをしている画像
yumの後の「-y」オプションはインストール途中の確認を全て「y」としてスキップする場合に挿入すると最後まで確認無くインストールできます。

インストールしたapacheの確認をしている画像apacheをインストールして成功した時の画像
Complete!」と表示されたらインストール完了です。

yum list installed | grep httpd で確認してみると上記のように二行表示されました。CentOSのヴァージョンによっては4行表示されていたようなので確認と言ってもこれでいいのか分からないところではありますけど命令通りには進んでいるはずです。

自動起動させます

apacheの自動起動設定をしている画像
「 systemctl enable httpd.service」とコマンドを記入することでCentOS 7起動時に動じにApacheも自動起動させることができるので設定しておきます。

apacheの自動起動設定した時の表示画像
「Created symlink from /etc/systemd/system/multi-user.target.wants/httpd.service to /usr/lib/systemd/system/httpd.service.」と表示されます。

Windows 10からVM内のHTTPサーバーへアクセスしてみる

はたしてApacheは稼働しているのでしょうか?

試しにCentOS 7 再起動してWindows10側からVM内にインストールしたCentOS 7のhttpdが自動起動しているはずなのでアクセスしてみます。一つのPC内で接続すると言うのも変な感じですけれどWindows10側からCentOS 7のhttpdにhttp(s)通信できるように設定したのでブラウザから接続できるのです。

VM内CentOS 7のhttpdのネットワークアドレスを調べる

これが以前経験していたCentOS6の時とはまた違う事が多いので大変です。分かっていれば良いのですが最新のcentos7でhttpdのネットワークアドレスを調べる「ipconfig」コマンドではエラーになります。ただしyum install net-toolsとインストールすることで「ipconfig」コマンドで調べられるようにもなります。「ipconfig」コマンドではエラーになってしまいネットで調べてみると他の方の説明では「ipconfig」コマンドでネットワークを調べることが出来ています。何故?と設定を一から調べ直してみても何も間違っていない!余計にわけがわからない状況になります。このあたりがLinuxは難しい。

私もCentOS 7 のインストール時に最小限のインストールにして設定をゼロから行っているからでしょうか最初からつまずきましたがなんとかクリアできました。ちなみにhttpdのネットワークアドレスを調べる方法としては「yum install net-tools」とインストールしてから「ipconfig」コマンドを使う方法の他にも方法があります。

httpdのネットワークを調べるコマンドを入力している画像
「ip addr show」とコマンド入力してEnterを押すと表示されます。この方が楽ですけどipconfigに慣れている方は「net-tools」をインストールした方が良いのかもしれません。忘れた頃にネットワークアドレスを調べて「ipconfig」コマンドから調べてエラーがまた出て焦ることも考えられます。

「ip addr show」コマンドでの表示は画像のように「1:」のほうにループバックの設定が表示されます。「2:」の方にインターフェイス名(私の場合はens33)があって「inet」以下にネットワークアドレスが表示されます。

httpdのネットワークをip addr showコマンドで表示させている画像
例えばこのように表示されていたら192.168.145.168がアドレスです。その後ろにある「/24」は192.168.145まではネットワークの範囲だということを表していて通信するだけなら192.168.145.168が分かれば良いので気にしなくても大丈夫です。brdとその後ろにあるアドレスはブロードキャストアドレスと言ってこれもまたネットワークについての説明です。これも気にする必要はありません。

いよいよVMwareをインストールしてあるVMware外側のwindows10からhttpdへアクセス

windows10のブラウザのURLに調べた192.168.145.168を入力します。このアドレスは割り当てられている数字ですから各で変わります。私の場合は「ip addr show」コマンドで調べたらこのアドレスが割り当てられた事が分かったのでこのアドレスで通信できます。プライベートアドレスと言ってインターネットに公開しない範囲のアドレスです。ローカルで使える数字を割り振っているだけですので自分に設定されたネットワークアドレスを「ipconfig」か「ip addr show」で調べて入力してください。
windows10からVMware内のhttpdへアクセス成功している画像
この画像のようにApacheの表示が出たらアクセスできています。

CentOS 7にMySQLをインストール

準備としてCentOS 7にMariaDBという別のデータベースがデフォルトでインストールされているとデータベースの混在はできないので確認して削除します。

Mariaというファイル名でファイルを調べた画像
インストールしてあるファイル名で「maria」という文字列のファイルを検索します。見つかったのでこれを削除します。

MariaDBを削除している画像
yum remove mariadb-libsx86_64で削除できます。

MariaDB削除の選択画像
最後に「y」を入力して削除します。
Complete!」と表示されたら削除完了です。
これでMariaDBは削除しましたが、何か操作をしてMariaDBのデータフォルダが残ってしまっている場合、新たにmysqlをインストールするとログインするとエラー表示されることがあるので一応データフォルダ削除コマンドも入力しておきました。何も無いので何も返しませんけど。

MariaDBのデータフォルダ削除画像
デフォルトでインストールされているMariaDBも削除し、データフォルダも無いことを確認しましたらいよいよmysqlをインストールします。

MySQLをインストール

最初にyumでインストールするためにMySQL公式ダウンロードページにあるyumリポジトリを設定しておく必要があります。

MySQL公式ダウンロードページをブラウザで表示します。
MySQL  Download Yum Repositoryのページ
下の方に「ダウンロードボタン」が並んでいますが、CentOS7はRedHat系なので「Red Hat Enterprise Linux 7 / Oracle Linux 7 (Architecture Independent), RPM Package」という表示の右にある「ダウンロードボタン」をクリックします。

MySQL公式のBegin Your Downloadページ
Oracleのアカウントからダウンロードするように表示されますが、「Oracleアカウント」を作る必要はありません。

MySQL公式ページでリンクのアドレスをコピーを選択している画像
「No thanks, just start my download.」部分を右クリックメニューを表示させてリンクURLをコピーします。
https://dev.mysql.com/get/mysql80-community-release-el7-2.noarch.rpm」というURLになりました。

どうやらMySQL 8.0が最新バージョンのようです。

旧バージョンのMySQL 5.5, 5.6, 5.7については別のダウンロードページからURLを取得します。現在のエックスサーバーではMySQLのバージョンが5.7なのでこちらにしようか迷いましたけどMySQL 8.0とかなりバージョンが大きく変わっているようですし最新の8.0を導入していきます。

MySQL 8.0のリンクのアドレスをコピーしてあるので、「yum –y localinstall」の後ろに間違わないように入力していきます。

yum –y localinstall https://dev.mysql.com/get/mysql80-community-release-el7-2.noarch.rpmと入力したらEnterキーでyum installコマンドでMySQL 8.0がインストールできるようになります。まだインストールはされていません。

yum -y installからmysqlをインストールするコマンドを入力した画像
「yum –y install mysql-community-server」と入力してEnterキーでインストールが始まります。

Complete!」と表示されたら無事インストール終了です。

mysqld --versionコマンド
MySQLをインストールしたらインストールバージョン確認をします。

MySQLの初期設定

MySQLをサーバー起動時に自動スタート設定する

CentOS 7起動時にMySQLも起動させます。必ずしも必要ありませんけど目的がPHP開発環境として利用するだけなので毎回必ずMySQLをスタートさせます。一度設定しておけばサーバー起動時に同時にMySQLをスタートさせることができます。

MySQLを起動時に稼働させるコマンド
「systemctl enable mysqld.service」でCentOS 7起動時にMySQLも同時に立ち上がります。「reboot」で再起動して確認してみます。

MySQL稼働状態か調べるコマンド
現在のMySQLが稼働しているかどうかは「systemctl status mysqld.service」で「active (running)」と表示されたら稼働しています。緑色で稼働表示されるので一目瞭然です。cあt

MySQLパスワードを簡単なものに変更する

MySQLパスワードを確認

MySQLでrootに割り当てられたパスワードを調べている画像
MySQLをインストールすると自動的にパスワードが決めてくれるのでまずそのパスワードを表示させてメモしておいて、MySQLでrootとしてログインするパスワードとして使用します。「cat /var/log/mysqld.log | grep root」と入力してEnterを押します。

localhost: の後ろにパスワードが表示されます。これをメモしておきます。

mysql_secure_installation」コマンドでパスワード変更設定

初期パスワードの変更

mysql_secure_installationコマンド
「cat /var/log/mysqld.log | grep root」で表示させてメモしておいたCentOS 7に与えられた初期設定パスワードを入力します。

MySQL  初期パスワードから新しいパスワードへ変更している画像
与えられていた初期パスワードが通るとその初期パスワードは破棄するようにして新しいパスワードを入力します。

MySQL  新しいパスワードを入力している画像
「Re-enter new password:」にも同じ新しいパスワードを入力します。

MySQL  新しいパスワーの強度100と評価されている画像
入力した新しいパスワードについて強度の評価がされます。小文字、大文字、数字、記号を混ぜて文字数もクリアすると最高点100になります。

「Change the password for root ?」rootパスワードを変えるかと尋ねられますので変えたい場合は「y」か「Y」を入力します。
ここでは特には変える必要が無いので「y」か「Y」以外入力すれば良いのですが明示的に「n」を入力してスキップしました。
もちろん変更しても良いですし変更する方が一般的です。あまりサーバーとして利用する事を想定せずPHPとMySQLのテストだけしたいのでスキップできるものは簡単にスキップしただけです。

・MySQLでの初期パスワードを破棄して新しいパスワードを設定しました。

匿名ユーザー削除

匿名(anonymous)ユーザーの削除設定
「Remove anonymous users? (Press y|Y for Yes, any other key for No)」は匿名でIDを持たないユーザーのアクセスを拒否する設定ですので通常「Y」で削除します。セキュリティのためです。完全にネットから遮断してローカルで利用するとか匿名ユーザーの設定などテストするとかMySQLに精通された方以外は削除して良いと思います。

「Success」と表示されます。

・匿名ユーザーを削除設定しました。

リモートからのrootログインを禁止

MySQL  リモートからのRootでの接続をできないよう変更している画像
localhost以外からrootとして認めない設定にします。

・リモートのrootユーザーを削除

データベースのtestを削除

test DBを削除
データベースの内「test」を削除します。

・テスト用データベース削除

privilege tablesをリロード

privilege tablesをリロード
testデータベースを削除したことをprivilege tablesをリロードすることによって設定を確定できるので「Y」を挿入してEnterを押します。

・testデータベース削除に伴うprivilege tablesリロード

これで「All done!」と表示され初期設定完了です。

PHP7.1をインストール

EPELリポジトリの追加
PHPをインストールする前にCentOS 7 の標準リポジトリには無いのでPHPを提供してくれる「Remiリポジトリ」を追加しています。

Complete!」と表示されたら無事インストール終了です。

php7のRemiリポジトリ追加
PHP7.*バージョンRemiリポジトリの追加します。

Remiリポジトリの確認
lsでPHP7.1があるか一応確認してみます。

RemiリポジトリのPHP確認
「remi-php71.repo」がPHP7.1です。これを確認してください。

phpと拡張機能のインストール
PHP7.1と拡張機能のインストールします。拡張機能は必要なのかわかりませんけど一応インストールしました。
PHPだけインストールする場合は「yum install –enablerepo=remi,remi-php71 php」でインストールできます。

CentOSにインストールしたPHPのバージョン確認
「php -v」で現在インストールしたPHPのバージョンを表示できます。
php.iniを編集して環境に合わせたら一応PHP開発環境の全インストールは完了です。

参考にしたウェブサイト

VMware vCenter Converter Standaloneを導入する

CentOSを仮想化して開発用WEBサーバーを構築する

CentOS 7 への Apacheインストール。最短でウェブサーバーを構築してテストページを表示する。

Apache httpd 2.4 を CentOS 7 に yum でインストールする手順