VSCode上ででSQLをコーディングする環境を作った時の備忘録。
家にマイデータベースが欲しくなり、SynologyのNAS上にMariaDBをインストールし、WindowsのVisual Studio Code(VSCode)上で開発できる環境を構築することにしました。
以下の環境としました(バージョンは省略:ほぼ最新)。
Server側
Client側
Server側構築
DiskStation Manager (DSM)から実行
- MariaDBをインストール
- phpMyAdminをインストール
- phpMyAdminからMariaDBに接続する
- テストアクセス用のDBを作成する
Client側設定
接続確認
- VSCodeのアクティビティバーの次のマークをクリックしてSQLToolsを起動
- "Add New Connection"を選択して、Connection Assistantの画面になります。ここでdriverを選択するのですが、SQLToolsにはdriverが入っていないので最初はドライバーがない旨のメッセージになります。この場合は"SQLTools MySQL/MariaDB/TiDB"という拡張機能を追加でダウンロードします。拡張機能名だけ見るとdriverなの?と思うかもしれませんが、説明では"SQLTools MySQL/MariaDB/TiDB Driver"となっています。
- "Select your database driver"で、MariaDBを選択します。
- "Connection Settings"にMariaDBへの接続設定を入力して"TEST CONNECTION"をクリック。
- "Successfully connected!"と表示されたら、"SAVE CONNECTION"をクリックして設定を保存します。 ここで、以下の問題点が出ました。
問題点
VSCodeの拡張機能SQLToolsからMariaDBに接続しに行って失敗しました。
ホスト名を設定したのですが、IPv6で接続に行っており、それをMariaDBが拒否しているようです。 pingはipv6で通るので、SQLToolsの問題ではなく、MariaDBの設定を修正する必要があります。 調べると、以下の情報がありました。 superuser.com (DSMから)PHPmyadminで簡単に設定できないようですので、ホスト名での設定はあきらめてIPv4アドレスを直打ちすることにしました。
気が向いたらちゃんとした解決策を施したいのですが、せっかくDSMをつかってチャチャッと構築したので、後回しでいいかと思っています(そもそもMariaDBの構築がメインではないし)。解決したらまた記事を書こうと思います。
おまけ(その他の注意点)
SQLToolsでおかしくなったら、まずVSCodeを再起動してください。またWindowsを再起動も試してみてください。設定では基本的なことですが、最近は再起動しない場合が多いので忘れがちです。わけわからなくなったら1度は試してみましょう。
古い人は、こまめなセーブと再起動をよくやります😉