1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

【学内向け?】skrsqlの環境構築 〜VirtualBoxアレルギーのあなたへ〜

Last updated at Posted at 2025-04-30

学内向けにhyper-vのイメージを作成しましたお使いください
https://drive.google.com/file/d/1xrCoY-wniWxqJH8OgNRIUyptKZrW79nL

概要

『スッキリわかるSQL入門』の演習用データベースをローカル環境で動作させることができるskrsqlの環境構築について備忘録としてここに残します
なお、元のリポジトリは「第3版」用と記載されていますが、Makefileの中では「第4版」の演習SQLを参照するようになっております
参考:miyabilink/sukkiri-sql4-codes

学校が用意した環境ではなく、自分で構築しようと考える時点である程度の技術的素養がある方が対象だと思うので、説明は簡潔に進めます
本記事では Docker を使った構築方法には触れませんので、その点はあしからず

追記:GitHub Insightsを見たら学内チャットにリンクを貼った日に、クローン数が20を超えていて、とても嬉しかった
この事実だけで、私は救われた気がします
「もしかしたら、ほんの少しでも誰かの役に立てたのかも」と勘違いできるだけで、幸福です
ありがとう、そしてなんかごめん
優しく殺して

使用リポジトリ

元リポジトリ(オリジナル)

改良版(推奨)

※一部の不具合修正・Makefileの改善などを行ったフォークです。

必要なパッケージのインストール

ここではaptを使いますが、他のディストリビューションでも基本的には対応可能です(たぶん)。

PostgreSQL,curl,make,git,unzipをインストール

sudo apt update
sudo apt install postgresql curl make git unzip -y

リポジトリのクローン

以下のいずれかをクローンしてください。

# オリジナル
git clone https://github.com/densuke/skrsql.git

# 改良版(推奨)
git clone https://github.com/yuu61/skrsql.git
cd skrsql

ディレクトリの作成とビルド

オリジナル版では/usr/local/share/ssqlディレクトリが存在しないため、エラーが出ることがあります。あらかじめ作成
自分はこれでうまくいった

sudo mkdir -p /usr/local/share/ssql

次に、自分のユーザーでPostgreSQLを操作できるよう、ユーザーを作成します(まだ作っていない場合)

sudo -u postgres createuser -s "$(whoami)"

その後、ビルドとインストールを行います。

~/skrsql$ make
~/skrsql$ sudo make install

動作確認

適当にDBを起動してみます。以下のようにlist 1 1コマンドを実行してみてください。

$ list 1 1
問題ファイル: pre_list0101.sql
NOTICE:  database "Can" does not exist, skipping
--- psqlを起動しています: \q と入力すれば終了です ---
カーソルキーは使用できません。テキストエディタ等でコマンドを貼り付けて実行してください。
psql (16.8 (Ubuntu 16.8-0ubuntu0.24.04.1))
Type "help" for help.

Can=>

無事に psql が立ち上がれば成功です。お疲れ様でした。

余談

VirtualBOXよりHyper-VとかWSLの方がよくね?
VirtualBoxよりも軽いし起動も速くて個人的にはおすすめです
参考:起動ボタン押下からコマンド実行可能になるまでの時間

環境 起動時間
VirtualBox 65秒
Hyper-V 12秒
WSL 2秒

Hyper-Vは機能の有効化が必要だったり若干ハードルが高いけど既存の仮想マシンを配布できたりするならそっちの方が有用かも...?

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

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?