未提供项目说明
redscope的Python项目详细描述
红镜
Redscope是一个数据库迁移和自省工具,旨在帮助管理您的amazonredshift实例。
所有的迁移都是用纯SQL编写的,.sql
文件中,没有花哨的技巧或对ORM框架的依赖。在
迁移文件被跟踪时间戳,以消除迁移密钥重复的可能性。在
入门
安装
Redscope可以使用pip安装。在
pip install redscope
新项目
安装Redscope后,创建一个新项目。在
^{pr2}$这将创建迁移、ddl和日志文件所在的目录。
redscope.log
文件用于记录redscope中执行的每个命令。在
database
ddl
logs
redscope.log
migrations
环境
默认情况下,Redscope将在项目的root
目录中查找.env
文件,并加载
REDSCOPE_DB_URL
中作为环境变量的连接字符串。在
初始化数据库
一旦在.env
文件中提供了一个连接字符串,就可以使用这些表来跟踪应用的迁移
必须创建。运行下面的命令将创建一个模式和表redscope.migrations
。在
redscope init db
创建迁移
{cd8>下面的迁移命令是创建一个新的迁移命令。
这将在migrations
目录中创建一个目录,其中包含2个文件up.sql
和{
redscope new migration --name name-of-my-migration
在up.sql
中,放置要对数据库执行的SQL命令,以使数据库up
处于最新状态。
在down.sql
中,放置要运行的SQL命令,以撤消执行up.sql
文件时对数据库所做的更改。在
正在运行迁移
执行所有未应用的迁移
redscope migrate up
这将针对目标数据库应用所有本地迁移文件。在
恢复更改的步骤
redscope migrate down
自定义环境
在较大的项目中,可能有几个.env
文件和到数据库的连接,这些文件和连接使用
你的酷项目用来执行一些数据库操作。redscope
允许使用自定义.env
文件和自定义环境
变量。不过,Redscope希望该文件位于项目的根目录中。在
要加载自定义.env
文件,但使用默认的REDSCOPE_DB_URL
传递可选的--env-file
参数。在
redscope migrate up --env-file dev.env
但是,要加载默认的.env
文件,请使用自定义环境变量
redscope migrate up --env-var MY_OTHER_DB_CONN_STRING
同时加载自定义文件和自定义变量
redscope migrate up --env-file dev.env --env-var MY_OTHER_DB_CONN_STRING
这样就可以将redscope连接到单个项目中的多个数据库。在
要加载自定义环境,例如my_cool_file.env
只需传递文件名
- 项目
标签: