SQLiteをブラウザで管理できるsqlite-webのインストール

SQLiteをブラウザで管理できるsqlite-webのインストール 生産性UP

「SQLiteをWebブラウザで管理したい」
「サーバー上のSQLiteをGUIツールで操作したい」

このような場合には、sqlite-webを利用できます。
この記事では、sqlite-webについて解説しています。

本記事の内容

  • sqlite-webとは?
  • sqlite-webのシステム要件
  • sqlite-webのインストール
  • sqlite-webの動作確認

それでは、上記に沿って解説していきます。

sqlite-webとは?

sqlite-webは、Pythonで書かれたWebベースのSQLiteデータベース管理ツールです。
PHPのphpMyAdminと同じだと言えば、イメージしやすいでしょう。

次のようなローカルアプリをインストールできない・したくない場合の選択肢となります。

また、サーバー上のSQLiteにアクセスする場合の手段でもあります。
サーバー上でのSQLiteをWindowsからGUIで管理したいこともあるでしょう。

このような場合に、sqlite-webは大いに力を発揮するはずです。
パスワードをかけることもできるので、外部公開も可能になります。

また、Dockerfileとして公開されています。
そのため、PHPメインであってもsqlite-webを使うこともありでしょう。

以上、sqlite-webについての説明でした。
次は、sqlite-webのシステム要件を確認します。

sqlite-webのシステム要件

現時点(2021年10月)でのsqlite-webの最新バージョンは、0.4.0となります。
この最新バージョンは、2021年10月14日にリリースされています。

サポートOSに関しては、以下を含むクロスプラットフォーム対応です。

  • Windows
  • macOS
  • Linux

サポート対象となるPythonのバージョンは、明示されていません。
ただ、sqlite-webは次のライブラリに依存しています。

  • flask
  • peewee
  • pygments

これらより、Python 3.6以降は必須だと推測可能です。
よって、Python 3.6以降の環境を用意する必要があります。

sqlite-webのシステム要件としては、Python 3.6以降がポイントと言えます。

以上、sqlite-webのシステム要件を説明しました。
次は、sqlite-webをインストールします。

sqlite-webのインストール

検証は、次のPythonバージョンで行います。

>python -V 
Python 3.9.7

まずは、現状のインストール済みパッケージを確認しておきます。

 >pip list 
Package    Version 
---------- ------- 
pip        21.3 
setuptools 58.2.0

次にするべきことは、pipとsetuptoolsの更新です。
pipコマンドを使う場合、常に以下のコマンドを実行しておきましょう。

python -m pip install --upgrade pip setuptools

では、sqlite-webのインストールです。
sqlite-webのインストールは、以下のコマンドとなります。

pip install sqlite-web

インストールは、すぐに終わります。
では、どんなパッケージがインストールされたのかを確認しましょう。

>pip list 
Package      Version 
------------ ------- 
click        8.0.3 
colorama     0.4.4 
Flask        2.0.2 
itsdangerous 2.0.1 
Jinja2       3.0.2 
MarkupSafe   2.0.1 
peewee       3.14.4 
pip          21.3 
Pygments     2.10.0 
setuptools   58.2.0 
sqlite-web   0.4.0 
Werkzeug     2.0.2

それなりに依存関係のあるパッケージが存在しています。
これだけ多いとPythonの仮想環境を利用した方がよいでしょう。

Windowsなら、IDEにPyCharmを使えば簡単に仮想環境を利用できます。
プロジェクト(今回ならsqlite-web用)毎に仮想環境となります。

また、以下のようにコマンドでも簡単に仮想環境を利用できます。
Linuxサーバーで動かす場合には、こちらとなるでしょう。

以上、 sqlite-webのインストールについて説明しました。
最後は、 sqlite-webの動作確認を行います。

sqlite-webの動作確認

sqlite-webの利用方法は、以下。
sqliteのデータベースファイルを指定するだけです。

sqlite_web /path/to/database.db

オプションには、次のモノがあります。

>sqlite_web -h 
Usage: sqlite_web [options] 
Options: 
  -h, --help            show this help message and exit 
  -p PORT, --port=PORT  Port for web interface, default=8080 
  -H HOST, --host=HOST  Host for web interface, default=127.0.0.1 
  -d, --debug           Run server in debug mode 
  -x, --no-browser      Do not automatically open browser page. 
  -P, --password        Prompt for password to access database browser. 
  -r, --read-only       Open database in read-only mode. 
  -u URL_PREFIX, --url-prefix=URL_PREFIX 
                        URL prefix for application. 
  -e EXTENSIONS, --extension=EXTENSIONS 
                        Path or name of loadable extension. 
  SSL options: 
    -c SSL_CERT, --ssl-cert=SSL_CERT 
                        SSL certificate file path. 
    -k SSL_KEY, --ssl-key=SSL_KEY 
                        SSL private key file path. 
    -a, --ad-hoc        Use ad-hoc SSL context.

ここでは、SQLite用サンプルデータを利用します。
SQLite用サンプルデータについては、次の記事で説明しています。

ダウンロード・解凍した「chinook.db」を適当な場所に保存します。

sqlite_web C:\data\chinook.db

上記コマンドを実行すると、次のように表示されます。

>sqlite_web C:\data\chinook.db 
 * Serving Flask app 'sqlite_web.sqlite_web' (lazy loading) 
 * Environment: production 
   WARNING: This is a development server. Do not use it in a production deployment. 
   Use a production WSGI server instead. 
 * Debug mode: off 
 * Running on http://127.0.0.1:8080/ (Press CTRL+C to quit) 
127.0.0.1 - - [19/Oct/2021 10:08:57] "GET / HTTP/1.1" 200 - 
127.0.0.1 - - [19/Oct/2021 10:08:58] "GET /static/js/bootstrap.bundle.min.js HTTP/1.1" 304 - 
127.0.0.1 - - [19/Oct/2021 10:08:58] "GET /static/css/bootstrap.min.css HTTP/1.1" 304 - 
127.0.0.1 - - [19/Oct/2021 10:08:58] "GET /static/css/syntax-highlight.css HTTP/1.1" 304 - 
127.0.0.1 - - [19/Oct/2021 10:08:58] "GET /static/css/sqlbrowse.css HTTP/1.1" 304 - 
127.0.0.1 - - [19/Oct/2021 10:08:58] "GET /static/js/jquery-1.11.0.min.js HTTP/1.1" 304 -

同時にブラウザが起動します。
アドレスは、「http://127.0.0.1:8080/」です。

ここまで確認できれば、sqlite-webの動作確認としては十分です。

以上、sqlite-webの動作確認の説明でした。

タイトルとURLをコピーしました