django 快速启动数据库客户端程序

August 2019 · 1 minute read

实际工作经历中,免不了有时候需要连接数据库进行问题排查分析的场景,之前一直习惯通过 mysql -uxxx -hxxxx -P1234 ... 这样的方式来启动命令行形式的 MySQL 数据库客户端程序,只是用起来比较麻烦,每次都要拷贝各个配置参数,还要记得不要在命令里显式打印密码。后来想起来在开发 Ruby on Rails 程序的时候,其提供了 rails dbconsole 的命令,可以方便直接启动对应的数据库客户端命令行程序,联想到 Django 理论上也有,所以找到了 python manage.py dbshell 这个命令,使用效果和自己手动敲 mysql 命令行是一样的,省去繁琐的参数设定步骤。

使用效果

clipboard.png

用法

其用法可以直接查询命令行帮助文档:

# python manage.py dbshell -h
Usage: manage.py dbshell [options]

Runs the command-line client for specified database, or the default database if none is provided.

Options:
  -v VERBOSITY, --verbosity=VERBOSITY
                        Verbosity level; 0=minimal output, 1=normal output,
                        2=verbose output, 3=very verbose output
  --settings=SETTINGS   The Python path to a settings module, e.g.
                        "myproject.settings.main". If this isn't provided, the
                        DJANGO_SETTINGS_MODULE environment variable will be
                        used.
  --pythonpath=PYTHONPATH
                        A directory to add to the Python path, e.g.
                        "/home/djangoprojects/myproject".
  --traceback           Raise on exception
  --database=DATABASE   Nominates a database onto which to open a shell.
                        Defaults to the "default" database.
  --version             show program's version number and exit
  -h, --help            show this help message and exit