[RUBY] Passer de SQLite3 à PostgreSQL

Contexte

Lors de la création d'un projet

rails new sample_app -d postgresql

Où dire

rails new sample_app -D postgresql

Parce que c'était le cas, Posgre n'était pas réglé.

Dans Gemfile

# Use postgresql as the database for Active Record
gem 'pg'

je veux que tu sois

# Use sqlite3 as the database for Active Record
gem 'sqlite3'

C'était.

Je me demande si sqlite3 est celui par défaut.

Passer de SQLite3 à PostgreSQL

https://qiita.com/rubys8arks/items/0749d6fa73e88d3d381c Changeons-le en faisant référence à cela.

Puisque Posgre lui-même est installé, À sqlite3 dans le Gemfile

# Use postgresql as the database for Active Record
gem 'pg', '>= 0.18', '< 2.0'

Changez pour et effectuez l'installation groupée.

Dans cet état, rails db: create ne peut pas être fait

bin/rails db:create
rails aborted!
LoadError: Error loading the 'sqlite3' Active Record adapter. Missing a gem it depends on? sqlite3 is not part of the bundle. Add it to your Gemfile.

Modifier database.yml

before

# SQLite version 3.x
#   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

# Warning: The database defined as "test" will be erased and
# re-generated from your development database when you run "rake".
# Do not set this db to the same as development or production.
test:
  <<: *default
  database: db/test.sqlite3

production:
  <<: *default
  database: db/production.sqlite3

after

default: &default
  adapter: postgresql
  encoding: unicode
  # For details on connection pooling, see Rails configuration guide
  # https://guides.rubyonrails.org/configuring.html#database-pooling
  pool: <%= ENV.fetch("RAILS_MAX_THREADS") { 5 } %>

development:
  <<: *default
  database: sample_app_development

test:
  <<: *default
  database: sample_app_test

production:
  <<: *default
  database: sample_app_production
  username: sample_app
  password: <%= ENV['SAMPLE_APP_DATABASE_PASSWORD'] %>

Mot de passe pour .env

Omis ici

Créer une base de données

-> % bin/rails db:create
Created database 'sample_app_development'
Created database 'sample_app_test'

Recommended Posts

Passer de SQLite3 à PostgreSQL
Changer la base de données de SQLite en MySQL
Connectez-vous de Java à PostgreSQL
Passer de SQLite3 à PostgreSQL dans un nouveau projet Ruby on Rails
Comment passer du HTML à Haml
Changer la base de données ownCloud de SQLite par défaut en MariaDB etc. (CentOS7)
Changement de poste de SIer à Ingénieur Web
Je veux écrire rapidement de java vers sqlite
Changements de Java 8 à Java 11
Somme de Java_1 à 100
Migrer de JUnit 4 vers JUnit 5
De Java à Ruby !!
Comment passer d'Oracle Java 8 à Adopt Open JDK 9
[Ruby on Rails] De la construction de MySQL au changement de base de données
Comment modifier un projet vierge de TERASOLUNA 5.x pour prendre en charge PostgreSQL
Passé d'iBATIS à MyBatis3
Essayez Spring Boot de 0 à 100.
Migration de Cobol vers JAVA
Passer de slim3-gen à slim3-gen-jsr269
[JDBC] J'ai essayé d'accéder à la base de données SQLite3 depuis Java.
Nouvelles fonctionnalités de Java7 à Java8
Conversion de ○ mois en ○ années ○ mois
Changer un seul caractère de la chaîne de type String en majuscule
De Java inefficace à Java efficace
Si vous souhaitez modifier l'environnement de développement Java d'Eclipse
Construire un environnement PostgreSQL avec Docker (de la configuration à juste avant le développement)
migration du tampon de protocole de 2.x vers 3.x
[Note] Télécharger depuis S3, télécharger vers S3
Arrêter de renvoyer du client au serveur
Mise à niveau d'Ubuntu Desktop de 18.0.4 (?) À 20.04.1 (focal)
Comment configurer Spring Boot + PostgreSQL
Comment changer kube-proxy en mode ipvs.
Migrer de on-prepukiwiki vers esa.io \ (⁰⊖⁰) /
Passer de JSP + JSTL à Thymeleaf
De Java à VB.NET - Écriture de notes de contraste
Introduction à Ruby (à partir d'autres langues)
Java, interface pour partir du débutant
Remarques sur la migration de CircleCI 1.0 vers 2.0
Accro à l'importation de projets depuis GitHub
Mise à niveau de la botte à ressort de la série 1.5 à la série 2.0
Passer d'Eclipse à VS Code
La route de JavaScript à Java
Rails DB PostgreSQL a été remplacé par MySQL
Memorandum Poem (mis à jour de temps en temps)
[Java] Conversion d'un tableau à une liste
Mettre à jour MySQL de 5.7 à 8.0 avec Docker
Changez l'espace demi-largeur de STS (Spring Tool Suite) de "u" à "・"