DockerのMySQLコンテナにSequel proで接続する方法

docker エンジニア
記事内に広告が含まれています。

DockerのコンテナにSequelに接続する設定

docker-compose.yml

Dockerで作成するコンテナは下記の通りです。

version: '3'
services:
  mysql:
    image: mysql:5.7
    environment:
      MYSQL_DATABASE: development
      MYSQL_PASSWORD: password
      MYSQL_ROOT_PASSWORD: password
    # 文字化け対応
    command: mysqld --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci
    ports:
     - 3308:3306

下記コマンドでコンテナが起動します。

$ docker-compose up

 

Sequel Pro

下記の情報を入力して、「接続をテスト」を押します。

問題がなければ、「接続が成功しました」というメッセージが表示されます。

これで「接続」を押すと、無事にDockerのMySQLにSequelで接続できます。

 

名前 任意の名前
ホスト 127.0.0.1
ユーザ名 root
パスワード password
データベース development
ポート 3308

docker-mysql-sequel-1

よく使用するDBであればわかりやすい名前に変更して、「お気に入りに追加」しておくと、毎回入力する手間が省けます。

 

Sequelを使用せずにDockerのMySQLに接続する方法

1. コンテナに入ってからMySQLに接続する方法

まずはMySQLのコンテナに入ります。

$ docker exec -it <MySQLのコンテナ名> bash

今回の場合、「docker-compose.yml」の「services」で「mysql」という名前のコンテナを作成しているので、下記でMySQLのコンテナに入ることができます。

$ docker exec -it mysql bash

 

コンテナに入ったらMySQLのコマンドでDBに接続できます。

# mysql -u root -ppassword development

 

2. 直接コンテナ内のMySQLに接続する方法

コンテナに入らずに直接コンテナ内のDBに接続する場合は下記のコマンドで接続可能です。

$ mysql -u <ユーザー名> -p<パスワード> -h <ホスト名> -P <ポート名> <DB名>

 

今回のコンテナ内のDBには下記のコマンドで接続できます。

$ mysql -u root -ppawwrod -h 127.0.0.1 -P 3308 development

コメント