fbpx
devstyle.pl - Blog dla każdego programisty
devstyle.pl - Blog dla każdego programisty
2 minut

Batche do skryptowania i tworzenia bazy MySQL


13.07.2010

Automatyzacja w procesie tworzenia oprogramowania jest często-gęsto traktowana po macoszemu, O tej konkretnie materiii planuję napisać wkrótce trochę więcej w osobnej notce. Dziś przykład skryptów, które mogą znacznie przyspieszyć proces tworzenia aplikacji ciągnącej dane z MySQL.

Sam kiedyś pracowałem z bazą (a raczej jej strukturą) trzymając po prostu w repozytorium pliki bazy. Przy wdrażaniu aplikacji na serwer produkcyjny generowało się skrypt z Management Studio i uruchamiało go na maszynie docelowej. Do celów programistycznych potrzebna jest jednak co i rusz czysta baza, prawdopodobnie zainicjowana jakimiś danymi startowymi. Niby to tylko kilka kliknięć…

Jednak gdy ponad rok temu rozpocząłem pracę nad projektem, w którym proces ten zastałem już zautomatyzowany, doceniłem idącą za tym wygodę oraz wzrost wydajności programisty. Rozwiązanie jest bardzo proste: wystarczą dwa pliki bat. Jeden zawiera instrukcje skryptowania całej struktury bazy do pliku sql. Drugi – uruchomienia wygenerowanego w ten sposób skryptu a zaraz po nim kolejnego, inicjalizującego bazę (prawdopodobnie danymi takie jak domyślni użytkownicy czy jakieś kategorie, ewentualnie testowe wiersze przydatne przy deweloperce).

Dla MySQL prezentują się one następująco:

[dump-database.bat]

  1:  ..\tools\mysqldump.exe --user root --password=sa --databases dbName --add-drop-database --no-data --compatible=no_table_options > ..\src\Database\create-database-schema.sql
[create-database.sql]

  1:  ..\tools\mysql.exe --user root --password=sa --default-character-set utf8 dbName < ..\src\Database\create-database-schema.sql 
  2:  ..\tools\mysql.exe --user root --password=sa --default-character-set utf8 dbName < ..\src\Database\initialize-database.sql

Kilka słów wyjaśnienia odnośnie struktury katalogów:

  • instrukcje *.bat w katalogu Scripts/
  • skrypty sql w katalogu src/Database
  • narzędzia potrzebne do wykonania instrukcji także trzymam w repozyotorium, w katalogu tools/

Dodatkowo, aby dalej uprościć proces wywołania plików .bat z odpowiedniej ścieżki, dodałem odpowiednie komendy do wypasionego programiku SlickRun. Dzięki temu zarówno wygenerowanie (oczywiście wersjonowanego) sqla jak i jego wykonanie to raptem 4 (słownie: cztery) klawisze na klawiaturze.

Comments are closed.

Kurs Gita

Zaawansowany frontend

Szkolenie z Testów

Szkolenie z baz danych

Książka

Zobacz również