1
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

Raspberry PiにインストールしたmariaDBをVSCodeから操作する

Posted at

VSCodeからRaspberry Pi内のmariaDBを操作したい

SQLの勉強のためRaspberry PiにmariaDBをインストールしたけど、ターミナルからSQLを入力するのが面倒になり、VSCodeから操作するための環境を構築してみました。忘れないようにメモしておきます。

mariaDBにてユーザー作成と権限付与

RaspberryPi
# root権限でログイン
$ mysql -u root -p

# ユーザーを作成
CREATE USER 'testuser'@'%' IDENTIFIED BY 'hogehoge';

# データベースを作成する
MariaDB [(none)]> CREATE DATABASE testdb;

# データベースへの権限を与える
MariaDB [(none)]> GRANT ALL PRIVILEGES ON testdb.* TO testuser@'%';

# 一度ログアウトする
MariaDB [(none)]>exit

新規ユーザーでログインしてみる

RaspberryPi
$ mysql -u testuser -phogehoge
MariaDB [(none)]> 

リモートでログインしてみる

RaspberryPi
$ mysql -h IP Address -u testuser -phogehoge

-- ERROR 2003 (HY000): Can't connect to MySQL server on 'IPアドレス' (111 "Connection refused")

エラー発生。いろいろ調べていたらこのような素敵なサイトに遭遇。
こちらを参考にRaspberry Piにて設定していく。

RaspberryPi
# nmapで確認(インストールされていないときはpipでインストール)
$ nmap IPアドレス

Starting Nmap 7.70 ( https://nmap.org ) at 2020-01-03 15:45 JST
Nmap scan report for IPアドレス
Host is up (0.00037s latency).
Not shown: 997 closed ports
PORT     STATE SERVICE
21/tcp   open  ftp
22/tcp   open  ssh
Nmap done: 1 IP address (1 host up) scanned in 0.38 seconds

FTPとSSHしかポートが開いてない事を確認。

RaspberryPi
# データベースの設定が書かれたコンフィグファイルを検索する
$ sudo grep bind-address /etc/ -r -n --color
/etc/mysql/mariadb.conf.d/50-server.cnf:28:#bind-address            = 127.0.0.1

# エディターで開いて、bind-addressをコメントアウトする
$ sudo nano /etc/mysql/mariadb.conf.d/50-server.cnf
(修正前)bind-address         = 127.0.0.1
(修正後)#bind-address         = 127.0.0.1

# mariadbを再起動
$ sudo systemctl restart mysql

# 再度ポート確認
# nmapを確認
admin@raspberrypi:~ $ nmap IPアドレス
Starting Nmap 7.70 ( https://nmap.org ) at 2020-01-03 15:45 JST
Nmap scan report for IPアドレス
Host is up (0.00037s latency).
Not shown: 997 closed ports
PORT     STATE SERVICE
21/tcp   open  ftp
22/tcp   open  ssh
3306/tcp open  mysql

Nmap done: 1 IP address (1 host up) scanned in 0.38 seconds

これで接続できるようになったはずなので確認してみる。

RaspberryPi
# リモートアクセスでログインしてみる
$ mysql -h IPアドレス -u testuser -phogehoge
MariaDB [(none)]>

Raspberry Pi側の設定はこれでOKなはず。

VSCode側の設定

①VSCodeを立ち上げてExtensionsを選択
②MySQLを選択
③インストールをクリック(画像のアンインストールの場所に表示されます。)
スクリーンショット 2020-02-09 13.25.13.png
④エクスプローラーをクリック
⑤下部にMYSQLが表示されるのでクリック
⑥+ボタンが表示されるのでクリック
⑦画面上部にウィンドウが表示されるので下記の順に入力
 1. The hostname of the database:DBのIPアドレス
 2. The MySQL user to authenticate as :接続したいユーザー名
 3. The password of the MySQL user:選択したユーザーのパスワード
 4. The port number to connect to:DBのポート
 5. SSL certificate path.Leave empty to ignore.:何も入力しなくてOK
⑧エクスプローラーのMYSQLにDBのIPアドレスが表示されるのでクリック
⑨権限のあるDBやテーブルの一覧が表示される。

これでセッティング完了。これでSQLの勉強が捗ります.

1
3
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
1
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?