[VSCode]拡張機能MySQLでローカルに立ち上げたMySQLに接続する方法

備忘録
この記事は約3分で読めます。

今までEcelipseでJavaの開発環境を整えていたのですが、VSCodeでJavaの開発環境を整えて、Mysqlに接続しようとしたら2時間ぐらい手こずったので、やり方を備忘録として残しておく。

どうせ次やる時には忘れてるだろうからね…。

本題に関係ないが、なぜ、VSCodeで開発環境を整えているのかというと、Dockerを使用し、なるべくローカル環境に何かを入れないようにしようとすると、EclipseじゃきついのでVSCodeで開発環境を整えています。

環境情報

・macOS Sequoia

・Docker

・VSCode

・MySQL:8.0

・Java:17

前提

VSCode拡張機能のMySQlがすでにインストールされていること。

MySQL - Visual Studio Marketplace
Extension for Visual Studio Code - MySQL management tool

MySQLが起動していること。

手順1

以下のコマンドを叩いて、MySQLが動いているコンテナのIPアドレスを取得

Bash
docker inspect -f '{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' <コンテナ名かコンテナID>

手順2

MySQLの「+」押下。

押下後にhost名などを聞かれるので以下を入力

host:手順1で確認したIPアドレス

user:接続user

password:接続password

ssh:設定なければ空白のままでOK

接続userや接続passwordはコンテナの中だったりdocker-compose.ymlなどで定義していると思うので確認すればわかる。

接続が成功すると以下のような感じでMySQL内のデータベースが見れるようになる。

補足

もし、「ER_NOT_SUPPORTED_AUTH_Client」というエラーが出た場合の対処法も載せておく。

MySQLにrootでログイン。

Bash
mysql -u root -p

ユーザの認証方式を変更。

Bash
ALTER USER 'user'@'%' IDENTIFIED WITH mysql_native_password BY 'password';
FLUSH PRIVILEGES;

認証方式が変更されているかの確認。

Bash
ELECT user, plugin FROM mysql.user WHERE user = 'user';

これで自分は解決した。

AIが優秀すぎて助かるわ。

最近DynamoDBとかしか触ってなくて、SQLの環境の整え方とか忘れた。

コメント

タイトルとURLをコピーしました