Yoyo-migrations

Screenshot Software:
Yoyo-migrations
Detalii soft:
Versiune: 4.2.4
Incarca data: 14 Apr 15
Producător: Oliver Cope
Licenţă: Gratuit
Popularitate: 47

Rating: 2.5/5 (Total Votes: 2)

Yoyo-migrații este un utilitar bază de date de migrare schemă folosind SQL simplu și DB-API.
Ce yoyo-migrații face?
Ca aplicații de baze de date evoluează, modificări schema bazei de date sunt adesea necesare. Acestea pot fi, de obicei, scris ca script-uri SQL unice care conțin CREATE / ALTER masă (deși orice script SQL sau python poate fi utilizat cu yoyo-migrații).
Yoyo-migrații oferă un instrument de linie de comandă pentru citirea unui director de astfel de script-uri și aplicarea acestora în baza de date după cum este necesar.
sprijin colecțiilor de date
Baze de date PostgreSQL, MySQL și SQLite sunt acceptate.
Folosire
Yoyo-migrații este, de obicei invocat ca un script linie de comandă.
Exemple:
Citește toate migrațiile de migrații director și a le aplica la o bază de date PostgreSQL:
yoyo-Migrarea aplică ./migrations/ Postgres: // utilizator: parola @ localhost / baze de date
Migrații Rollback aplicat anterior la o bază de date MySQL:
yoyo-Migrarea retroactivitate ./migrations/ mysql: // utilizator: parola @ localhost / baze de date
Reaplicati (de exemplu, rollback, apoi se aplică din nou) migrații a unei baze de date SQLite la Locul de amplasare /home/sheila/important-data.db:
yoyo-migra sqlite reaplicați ./migrations/: ////home/sheila/important-data.db
În mod implicit, yoyo-migrații pornește într-un mod interactiv, care vă solicită pentru fiecare fisier migrare înainte de ao aplica, făcându-l ușor să aleagă migrații să aplice și rollback.
Directorul migrații ar trebui să conțină o serie de script-uri de migrație. Fiecare scenariu migrația este un fișier python (.py) care conține o serie de etape. Fiecare pas ar trebui să cuprindă o interogare de migrație și (opțional) o interogare retroactivitate. De exemplu:
#
# Fișier: migrații / 0001.create-foo.py
#
etapa (
& Nbsp; "CREATE TABLE foo (id INT, bar VARCHAR (20), PRIMAR KEY (id))",
& Nbsp; "DROP TABLE foo",
)
Numele fișierului fiecărui fișier (fără extensia .py) este folosit ca identificator pentru fiecare migrație. Migrații sunt aplicate în ordine nume de fișier, asa ca este util pentru a numi fișierele utilizând o dată (de exemplu, "20090115-xyz.py") sau cu un alt număr de incrementare.
yoyo-Migrarea creează un tabel în baza de date țintă, _yoyo_migration, pentru a urmări migrațiile care au fost aplicate.
Pașii pot lua, de asemenea, o ignore_errors argument opțional, care trebuie să fie una dintre aplică, retroactivitate, sau toate. Dacă în exemplul anterior alim masă să fi fost deja create prin alte mijloace, am putea adăuga ignore_errors = 'aplica' la pas pentru a permite migrarea să continue, indiferent:
#
# Fișier: 0001.create-foo.py
#
etapa (
& Nbsp; "CREATE TABLE foo (id INT, bar VARCHAR (20), PRIMAR KEY (id))",
& Nbsp; "DROP TABLE foo",
& Nbsp; ignore_errors = 'aplica',
)
Pași poate fi, de asemenea, Python obiecte nevărsate care au o conexiune bază de date ca argument unică. De exemplu:
#
# Fișier: 0002.update_keys.py
#
def do_step (Conn):
& Nbsp; cursor = conn.cursor ()
& Nbsp; cursor.execute (
& Nbsp; "INSERT INTO SysInfo"
& Nbsp; "(osname, hostname, de presă, versiunea, arc)"
& Nbsp; "VALORI (% s,% s,% s,% s,% s% s)",
& Nbsp; os.uname ()
& Nbsp;)
etapa (do_step)
de securitate Password
În mod normal specificați numele de utilizator și parola bazei de date ca parte a șirul de conectare a bazei de date în linia de comandă. Pe o mașină multi-user, utilizatorii ar putea vedea parola bazei de date în lista de proces.
-p Sau --prompt-parolă cauze yoyo-migrează spre solicite o parolă, ignorând orice parolă specificată în șirul de conexiune. Această parolă nu va fi disponibil pentru alți utilizatori prin intermediul listă proces sistemului.
Conexiune șir de cache
Prima dată când rulați yoyo-migra la un nou set de migrații, veți fi întrebat dacă doriți să cache șirul de conectare baza de date într-un fișier denumit .yoyo-migrează în directorul migrațiilor.
Acest cache este local in directorul migrațiilor, așa ruleaza ulterioare pe același set de migrație nu au nevoie de șirul de conectare baza de date să fie specificate.
Acest lucru economisește tastarea, evită numele de utilizator și parola bazei de date care arată în locuri de proces și micșorează riscul de a rula accidental yoyo-migrează în baza de date greșit (de exemplu, prin re-rularea o intrare anterioară-yoyo migrează în istoricul comanda, atunci când s-au mutat la o director diferit).
Dacă nu doriți acest fișier cache pentru a fi utilizate, adăugați parametrul --no-cache pentru opțiunile de linie de comandă

Ce este nou în această versiune:.

  • Fix pentru prost 4.2.3 lansare

Ce este nou în versiunea 4.2.1:

  • Bugfix pentru eliberare precedent, care a omis fișiere critice.

Ce este nou în versiunea 4.1.6:

  • Adaugata ferestre sprijin (datorită lui Peter Shinners)

Ce este nou în versiunea 4.1.5:

  • Configurare Stivuitoare de logare, astfel încât -v cauzele comutatorului ieșire pentru a merge la consola (datorită Andrew Nelis).
  • `` -v`` comutator de linie de comandă nu mai are un argument, dar pot fi specificate mai multe ori în loc (de exemplu, utilizarea `` -vvv`` în loc de `` -v3``). `` --verbosity`` Păstrează vechiul comportament.

Ce este nou în versiunea 4.1.3:

  • implicit schimbat numele tabelă migrației înapoi la "_yoyo_migration"

Cerințe :

  • Python

Software similare

Glom
Glom

14 Jul 16

odbcpp
odbcpp

14 Apr 15

JasperETL
JasperETL

3 Jun 15

DataCleaner
DataCleaner

11 Apr 16

Alte software-uri de dezvoltator Oliver Cope

fresco
fresco

20 Feb 15

Fresco
Fresco

10 Dec 15

Mailtools
Mailtools

14 Apr 15

Comentarii la Yoyo-migrations

Comentariile nu a fost găsit
Adauga comentarii
Porniţi pe imagini!