我的Rails应用程序的数据库是SQLite3,但我想将其更改为MySQL。我需要怎么做才能在应用程序中进行更改?
这是我的应用程序中的database.yml:
# SQLite. Versions 3.8.0 and up are supported.
# gem install sqlite3
#
# Ensure the SQLite 3 gem is defined in your Gemfile
# gem 'sqlite3'
#
default: &default
adapter: sqlite3
pool: <%= ENV.fetch("RAILS_MAX_THREADS") { 5 } %>
timeout: 5000
development:
<<: *default
database: db/development.sqlite3
test:
<<: *default
database: db/test.sqlite3
production:
<<: *default
database: db/production.sqlite3
您需要将适配器更新为MySQL2并添加凭据。例如:
development:
adapter: mysql2
encoding: utf8mb4
database: development
pool: <%= ENV.fetch("RAILS_MAX_THREADS") { 5 } %>
username: root
password: password
socket: /tmp/mysql.sock
请参阅官方文档以获取更多信息。
这是默认设置:
default: &default
adapter: mysql2
timeout: 5000
encoding: utf8mb4
pool: <%= ENV.fetch("RAILS_MAX_THREADS") { 5 } %>
socket: /tmp/mysql.sock
development:
<<: *default
database: development
username: <%= ENV.fetch("username") %>
password: <%= ENV.fetch("password") %>
test:
<<: *default
database: test
username: username
password: password
production:
<<: *default
database: production
username: <%= ENV.fetch("username") %>
password: <%= ENV.fetch("password") %>
您也可以编码username
,并password
在这样的数据库:
mysql://<username>:<password>@<host>:<port>/<db_name>
然后设置host
。不要将username
和password
放在您的database.yml文件中。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句