sqlite w środowisku developerskim w symfony i symfony2

Posted: January 26, 2012 8:59 PM

Sqlite nie koniecznie jest dobrą bazą produkcyjną dla tworzonych aplikacji internetowych. Jednak podczas ich tworzenia powinna nadać się idealnie. Tym bardziej, jeśli nie chcemy naszej maszyny developerskiej obarczać dodatkowymi procesami, czy też pilnować włączania/wyłączania serwerów bazy danych, sqlite nada się idealnie.

Konfiguracja dla doctrine w symfony 1.4 powinna wyglądać następująco:

YAML code
  1. # database.yml  
  2. dev:
  3.   doctrine:
  4.     class: sfDoctrineDatabase
  5.     param:
  6.       dsn: "sqlite:///%SF_DATA_DIR%/doctrine/sqlite_dbfile.db?mode=0666"
  7.       username: root
  8.       password: ~
  9.       encoding: utf8
  10.       attributes:
  11.         default_table_collate: utf8_general_ci
  12.         default_table_charset: utf8

Natomiast dla Symfony2 w ten sposób:

YAML code
  1. # Doctrine Configuration
  2. doctrine:
  3.     dbal:
  4.         driver:  pdo_sqlite
  5.         dbname:  Symfony
  6.         user:    root
  7.         password: null
  8.         host:    localhost
  9.         port:    ~
  10.         path:    "%kernel.root_dir%/data/symfony.sqlite"
  11.         charset: UTF8

Kilka rzeczy, o których należy pamiętać, konfigurując sobie środowisko developerskie w ten sposób:

Po pierwsze, wszelkie zmiany w modelu danych powinny zostać przetestowane w systemie zarządzania bazami, które będą/są używane w środowisku produkcyjnym.

Po drugie, jeśli kod projektu znajduje się w repozytorium, foldery z bazą powinny być ignorowane przez git/svn/czy bazaar. Tak samo powinniśmy je ignorować przy eksporcie na produkcję. Plik bazy sqlite będzie się zmieniał non stop, nie potrzebujemy sztucznego nabijania rewizji.

Dodatkowo, warto pamiętać, że sqlite nadaje się idealnie do skonfigurowania środowiska testowego naszej aplikacji w symfony.

Grzegorz Śliwiński

Be the first to post

Add new comment

Your email will never be published

Must start with http:// or https://
Delete the reply