pgmigrate2

Software screenshot:
pgmigrate2
Dettagli del software:
Versione: 1.2.2
Data di caricamento: 14 Apr 15
Sviluppatore: Sergey Kirillov
Licenza: Libero
Popolarità: 74

Rating: 4.0/5 (Total Votes: 1)

pgmigrate2 è uno strumento di Python che ti aiuta a evolvere il database insieme con l'applicazione.
L'unità fondamentale di PGmigrate è un singolo frammento di SQL chiamato patch.
Patch del database di esempio
& Nbsp; cat 000049_Added_index_on_CategorySlug.sql
--- Id: 89ccfca6-6851-11e1-99d8-a088b4e3b168
--- Autore: serg
--- Memo: Aggiunto indice CategorySlug
--- Data: 2012-03-07 14:32
CREATE UNIQUE INDEX catalog_category_slug_shop_id_slug
& Nbsp; ON catalog_category_slug
& Nbsp; L'UTILIZZO btree
& Nbsp; (shop_id, slug);
Come si può vedere di patch è un file SQL valido, che addirittura può essere eseguito direttamente. Ha anche bello, nome umano di file leggibile, e alcuni metadati.
Quickstart
Inizializzare il database
& Nbsp; pgmigrate2 init postgresql: // user @ password / il testdb
Questo creerà tavolo __applied_patches__ in testdb. Questa tabella è usata per tenere traccia che sono già applicate le patch.
Creare un repo patch, e una prima patch
& Nbsp; mkdir patchrepo
& Nbsp; pgmigrate2 newpatch patchrepo
... Modifica di patch nel vostro editor di testo ...
Ha scritto 'patchrepo / 000001_creating_table_x.sql'
Questo creerà zona vuota e aprirlo con un editor di testo. Invio di patch SQL, e memo opzionale, che descrive ciò che è la funzione di questa patch.
PGmigrate creerà un file come patchrepo / 000001_creating_table_x.sql dove 000001 è un numero di serie di patch, ed creating_table_x è una patch memo slugified. PGmigrate riempirà resto dei metadati cerotto da solo.
Controllare ciò che deve essere applicato a
& Nbsp; pgmigrate2 controllo patchrepo / postgresql: // user @ password / il testdb
Necessità di applicare: la creazione di tavolo x
Controllare prende tutte le patch in patch di pronti contro termine, e stampare un elenco delle patch che devono essere applicate a testd.
Applicare le patch
& Nbsp; pgmigrate2 migrano patchrepo / postgresql: // user @ password / il testdb
Necessità di applicare 1 patch:
L'applicazione 'creando tavolo x'
Migrate prende tutte le patch di patch di pronti contro termine, e in sequenza vale quelli di loro, il cui id non sono presenti __applied_patches__ tabelle di testdb.
Embedding
Ecco esempio come utilizziamo PGmigrate nel nostro progetto:
### comandi di migrazione di database
@ finaloption.command (config_opts)
def dbmigrate (config):
& Nbsp; da shopium.core.config import read_config
& Nbsp; config = read_config (config)
& Nbsp; da pgmigrate2 import api
& Nbsp; ritorno api.migrate ("migrazioni", config.db_uri)
@ finaloption.command (config_opts)
def dbnewpatch (config):
& Nbsp; da shopium.core.config import read_config
& Nbsp; config = read_config (config)
& Nbsp; da pgmigrate2 import api
& Nbsp; sottoprocesso import
& nbsp; path = api.newpatch ('migrazioni')
& Nbsp; se il percorso:
& Nbsp; subprocess.check_call ('hg aggiungere% s' path%, shell = True) # add appena creato patch Mercurial
@ finaloption.command (config_opts)
def dbcheckstatus (config):
& Nbsp; da shopium.core.config import read_config
& Nbsp; config = read_config (config)
& Nbsp; da pgmigrate2 import api
& Nbsp; api.check_status ("migrazioni", config.db_uri)

Requisiti :

  • Python

Programmi simili

Nepomuk WebMiner
Nepomuk WebMiner

21 Feb 15

psycopg
psycopg

12 May 15

Alembic
Alembic

20 Feb 15

PySQLite
PySQLite

11 May 15

Commenti a pgmigrate2

I commenti non trovato
Aggiungi commento
Accendere le immagini!