Aşağıdaki adımlar benim için çalıştı. Heroku tarafından oluşturulan ve Ryan Bates'in Railscast # 342'sinde bahsedilen musluk mücevherini kullanır . Birkaç adım var, ancak mükemmel çalıştı (tarihler bile doğru şekilde geçirildi) ve geçmişte yaptığım Oracle -> DB2 veya SQL Server -> Oracle geçişlerinden çok daha kolaydı.
SQLite'ın bir kullanıcı kimliği veya şifresi olmadığını, ancak dokunma taşının bir şey gerektirdiğini unutmayın. Ben sadece "kullanıcı" ve "şifre" kelimelerini kullandım.
Yeni veritabanları için Postgres veritabanı kullanıcısını oluşturun
$ createuser f3
Shall the new role be a superuser? (y/n) n
Shall the new role be allowed to create databases? (y/n) y
Shall the new role be allowed to create more new roles? (y/n) y
EDIT - Aşağıdaki komut güncellendi - bunun yerine bunu kullanın
$ createuser f3 -d -s
Gerekli veritabanlarını oluşturun
$ createdb -Of3 -Eutf8 f3_development
$ createdb -Of3 -Eutf8 f3_test
Gemfile'ı güncelleyin
gem 'sqlite3'
gem 'pg'
gem 'taps'
$ bundle
Database.yml'yi güncelle
#development:
# adapter: sqlite3
# database: db/development.sqlite3
# pool: 5
# timeout: 5000
development:
adapter: postgresql
encoding: unicode
database: f3_development
pool: 5
username: f3
password:
#test:
# adapter: sqlite3
# database: db/test.sqlite3
# pool: 5
# timeout: 5000
test:
adapter: postgresql
encoding: unicode
database: f3_test
pool: 5
username: f3
password:
Sqlite veritabanında taps sunucusunu başlatın
$ taps server sqlite://db/development.sqlite3 user password
Verileri taşıyın
$ taps pull postgres://f3@localhost/f3_development http://user:password@localhost:5000
Rails web sunucusunu yeniden başlatın
$ rails s
Gemfile'ı temizleyin
#gem 'sqlite3'
gem 'pg'
#gem 'taps'
$ bundle