LoginSignup
0
0

コマンドラインからWordPressをインストールし直す

Last updated at Posted at 2024-05-19

学習のためにAWSのEC2上でWordPressインストールしていろいろ見る、というのをやろうとした際、うっかりEC2のElastic IPを設定し忘れ、起動するたびIPが変わる環境になっていたため、インストール済みのWordPressにログインできなくなった、とかいうアホみたいな状況に陥ってしまった  (ᐛ) ばなな
なんとかするにはWordPress消して入れ直す=ちゃんとElastic IP設定した状況で設定し直す必要があるので取り組んだが、「消す」部分についてあまりいい手がかりが見つからなかった
なんとかできたことはできたので備忘録的に書いておく

TL;DR

  • (ssh接続から)WordPress用に設定したデータベースを DROP DATABASE ~ で消す
  • データベース作り直す(権限とかも付け直す)
  • /var/www/html/ 下のWordPress用ファイルを rm -rf で全て削除する
  • /var/www/html/ に再度WordPress用ファイルをコピーする
  • 対象IP(ドメイン登録してあればドメイン)にアクセスしWordPress設定を最初からやり直してインストールする

これでOK

発生

さーて先日AWSに設定したWordPressをいろいろいじるかー、とインスタンス・RDS起動してWordPressに入ろうとしたら、反応がない
見ると「(指定のIP)から反応がない」的な旨が表示される
IP間違ってたかなと思いEC2のダッシュボードにIP確認しに行くと、先日のものから変わっている

あ、これって
Elastic IP設定してなかった…

まあそりゃ反応ないよな、と思い、現在のIPに変えて再度アクセス
ログインフォームが出てきたから、よしよしこれでOKだ、と思いログインすると

やっぱり反応がない
URL確認すると、先日設定したIPのままになっている

あー、インストールした際に前のIPで紐づいちまうのかこれ…

こうなると今のやつ消して、Elastic IP設定した後でちゃんとインストールし直すしかないな、と思い今のWordPressを消す手段を探った
が…

EC2上のWordPressを消してください

「WrodPress 削除」「WordPress 再インストール」とかで探してみると、出てくる情報はだいたいこう

WordPressのファイルを消してください

これはまあいい
(※これのみ試すと、WordPressの再インストールには進めるが、最終的に「既にデータベースが作られてます」と出てきて紐づけがスキップされ、変わらない状態に戻ってこれる)

WordPressのデータベースを削除してください

ふむふむ、ではその方法は?

コントロールパネルに入ってデータベースの削除を選んでください

なるほどですね そのコントロールパネルはいれないです(ᐛ)

ただしブラウザでのログインはなしで

幸いにもssh接続自体はできる(現在有効なIP自体はわかるので)
だからターミナルとかから今使ってるmysqlとかにも入れるし操作はできる
…じゃあここからデータベース消すしかないか

作り直しのための環境構築から

「ちゃんとElastic IP設定した状況で設定し直す」を実行するため、まずはElastic IPを設定しておく
これやってないと、また次にインスタンス起動した際にIP変わっちゃって同じ事態に陥るから

ElasticIP.png

割当てを行い、これをちゃんとEC2インスタンスに紐づけておく

続いてsshでEC2へ
上記で割り当てたIPを使い接続する

ssh 上記で割り当てたIP

こんな感じのやつ

コマンドラインでデータベースを削除

上記のようにしてEC2に接続したら、 mysql コマンドで既に用意してあるデータベースに入れるはず
ユーザ自体は、データベース消せればなんでもいいので、とにかく入る

mysql -h データベース名 -u ユーザ名 -p

この後にパスワード入力すれば、頭に MySQL [(none)]> などが表示されてMySQLに入ってるはず

ひとまず現在のデータベースを確認すべく、いったん SHOW DATABASES; してデータベース名を確認(既知なら省略可)、消したいデータベース(入れなくなってるWordPressに紐づけたデータベース)の名前がわかったら、 DROP DATABASE コマンドで当該データベースを消す

DROP DATABASE 消したいデータベース名;

これでOK

削った後は、このまま CREATE DATABASE で先ほど消したのと同じデータベースを作り直し、 GRANT で権限付けておくなどの、作成時と全く同じ過程を踏んでおく

コマンドラインでWordPressのファイルを消す

上記でMySQLに必要な操作は終わったので、 exit で退出する

続いては現在置いてあるWordPressのファイルを消すことにする

自分が設定していた場合ではapache環境なので、WordPressで使われる実ファイルは /var/www/html/ 下に存在している
なのでここのファイルを消してやればいい
削除となれば rm -rf コマンドの出番だ

sudo rm -rf /var/www/html/*

※自分の場合は /var/www/html/ 下にWordPress用ファイル・ディレクトリしかなかったのでこれでOKだったが、それ以外のファイル・ディレクトリを置いている場合だと、それも消えてしまうので、 * 使わずちゃんとWordPress用ファイル・ディレクトリ名のみ指定して1つ1つ消していくこと

削除できたら( ls などで確認)、再度同じファイルを /var/www/html/ 下にコピー cp なり移動 mv なりして置き直し、 chown での権限付与、 systemctl restart httpd.service での再起動など必要な手順をちゃんと踏んでおく

…さて、これで「いかがでしたか?」されたWordPressの再インストール手順を、WrodPressのコントロールパネルに入らずにできたはずだ

改めてElastic IPとして設定したIPにアクセスすると…

ちゃんと「WordPressにようこそ」画面が表示された
今度は過程踏んで行くと、データベースとの紐づけも再度やり直すことができた

これでOKのはず

設定する際はちゃんと必要な手順踏んでないと面倒なことになるよ、というだけの話でした

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0