こんにちは!
プログラミング未経験文系出身、Elixirの国に迷い込んだ?!見習いアルケミストのaliceと申します。
今回はWSL2 Ubuntuでデータベースを入れ間違った時の対処法についてまとめます。
実行環境
- ・Windows 11 Home(バージョン 21H2, OS ビルド 22000.613)
- ・Ubuntu v18.04 ※WSL2環境下
起きたこと
PostgreSQL13以降が必要だったのに10を入れてしまった。
まだデータを入れておらずバックアップもとる必要ないため、アンインストール&再インストールを試みたいと思った。
そこで、
を参考に削除しようとしたものの
$ sudo apt remove --purge postgres
Unable to locate package postgres
となって削除できない...
アンインストールする
によると、
$ sudo apt remove --purge postgres
の、postgresにあたるところは、
$ dpkg -l | grep postgres
を入れるんだったそうな。
ゆえに、
$ sudo apt remove --purge postgresql
$ sudo apt remove --purge postgresql-10
$ sudo apt remove --purge postgresql-client-10
$ sudo apt remove --purge postgresql-client-common
...以下同様
を実行すると消えてくれました。
全部消し終わったら、
$ dpkg -l | grep postgres
で結果が返ってこないことを確認して完了!
とはいえ、アップデートで代用できなかったかな?
再インストール方法
を参考に、再インストールを試みる。
curlは、ubuntuに固有の公開鍵をdockerからダウンロードし、キーリングと呼ばれるものをインストールします。
これは、dockerパッケージの検証に使用されるとのこと(参考元)3
sudo apt install curl ca-certificates gnupg
curl https://www.postgresql.org/media/keys/ACCC4CF8.asc | gpg --dearmor | sudo tee /etc/apt/trusted.gpg.d/apt.postgresql.org.gpg> / dev / null
現在のリポジトリを最新のものにする
sudo apt update
sudo apt upgrade
PostgreSQL14をインストール
sudo apt install postgresql-14
PostgreSQL14のバージョン確認と起動4
psql --version
sudo service postgresql start
データベース内に移動し、対話型コンソール(psql)を起動
sudo su - postgres
psql
データベースのロールを変更しpsqlを抜ける
postgres=# alter role postgres with password 'postgres';
postgres=# \q
exit
再インストール完了!
~Elixirの国のご案内~
※Elixirって何ぞや?と思ったらこちらもどぞ。未来がぎゅっと詰まった、Elixirは今年で生まれて10周年です
We Are The Alchemists, my friends!5
Elixirコミュニティは本当に優しくて温かい人たちばかり!
私が挫折せずにいられるのもこの恵まれた環境のおかげです。
まずは気軽に話しかけてみてください。