Mac で SQL を勉強するための環境を作る

シェアする

MacでSQLを勉強するための環境を作成しました.そもそもデータベースが分からないから勉強しようとしているのに,入門書を購入したら環境構築方法はWindows用のみで困ったのでGoogle先生に聞きながら作ることになりました.なお今回私が購入したSQLの入門書は以下の本です.基本的な内容は抑えてあり,RDBMSの違いも注意されているので混乱しにくい上に,全てのサンプルコードは各DBMSでの方言対応のものが用意されている念の入れようで至れり尽くせりのお薦めできる本です.

スポンサーリンク
レクタングル(大)広告

前提条件

  • Docker for mac
  • Homebrew

環境構築

SQL勉強用ディレクトリを作成して移動します.

mkdir -p ~/pjc/sql_study
cd ~/pjc/sql_study

勉強用として使うDBのデータを保存するディレクトリを作成します.今回はmysqlとpostgresqlの環境を作るので,以下のように2つ作成するものとします.

mkdir mysql_db # mysql勉強用
mkdir pgsql_db # postgresql勉強用

データベースはサーバーとクライアントで別れています.今回はサーバーはdockerで建てて,ホストのMacからクライアントで接続します.そのため,Macにデータベースのクライアントをインストールします.

brew install mysql
brew install postgresql

次に,dockerを使ってサーバーを起動するための設定ファイルを書きます.今回はdocker-composeを利用します.まず設定ファイルを作成します.

touch docker-compose.yml # 編集する

内容は以下のようにします.

version: "3"

services:
  pgsql_study:
    image: postgres:alpine
    ports:
      - "5432:5432"
    environment:
      POSTGRES_USER: dev
      POSTGRES_PASSWORD: secret
    volumes:
      - ./pgsql_db:/var/lib/postgresql/data
    container_name: pgsql_study
  mysql_study:
    image: mysql
    ports:
      - "3306:3306"
    environment:
      MYSQL_USER: dev
      MYSQL_PASSWORD: secret
    volumes:
      - ./mysql_db:/var/lib/mysql
    container_name: mysql_study

このdocker-dompose.ymlが存在するディレクトリで,次のようにしてSQLサーバーを起動できます.

docker-compose up -d # 両方起動
docker-compose up -d pgsql_study # postgresql 起動
docker-compose up -d mysql_study # mysql 起動

接続したいSQLサーバーが起動している状態で,次のコマンドでDBにアクセスできます.

psql -h 127.0.0.1 -U dev # postgresql 接続
mysql -h 127.0.0.1 -u dev -p # mysql 接続

以上で,いつでもsqlの勉強をできる環境が準備できました.

まとめ

分かりやすいと評判の入門書は何故かWindowsの環境構築方法しか載っていないので,購入して暫く本棚の飾りになってしまいましたが漸く勉強が始められそうです.同じような方の助けになれば幸いです.

参考文献

スポンサーリンク
レクタングル(大)広告

シェアする

フォローする

スポンサーリンク
レクタングル(大)広告