・ Ruby: 2.5.7 Schienen: 5.2.4 ・ Vagrant: 2.2.7 -VirtualBox: 6.1 ・ PostgreSQL: 9.2.24 ・ Betriebssystem: macOS Catalina
vagrant ssh
anTerminal
$ vagrant ssh
yum
auf die neueste VersionTerminal
$ sudo yum -y update
Terminal
$ sudo yum -y install postgresql
Terminal
$ sudo yum -y install postgresql-devel
Terminal
$ sudo yum -y install postgresql-server
Führen Sie psql --version
aus, und wenn die Version angezeigt wird, ist die Installation abgeschlossen.
Terminal
$ psql --version
psql (PostgreSQL) 9.2.24
Terminal
$ sudo postgresql-setup initdb
Terminal
$ sudo service postgresql start
Terminal
$ sudo -u postgres psql
Terminal
postgres=# create role [Beliebiger Benutzername] with createdb login password '[Beliebiges Passwort]';
Wenn die Rolle durch Ausführen von "\ du" hinzugefügt wird, ist die Kontoerstellung abgeschlossen.
Terminal
postgres=# \du
List of roles
Role name | Attributes | Member of
-------------+------------------------------------------------+-----------
[Beliebiger Benutzername] | Create DB | {}
postgres | Superuser, Create role, Create DB, Replication | {}
Überprüfen Sie die von sudo postgresql-setup initdb
in Schritt 4 erstellte Datenbank.
Terminal
postgres=# \l
List of databases
Name | Owner | Encoding | Collate | Ctype | Access privileges
-----------+----------+-----------+---------+-------+-----------------------
postgres | postgres | SQL_ASCII | C | C |
template0 | postgres | SQL_ASCII | C | C | =c/postgres +
| | | | | postgres=CTc/postgres
template1 | postgres | SQL_ASCII | C | C | =c/postgres +
| | | | | postgres=CTc/postgres
(3 rows)
** * Den Unterschied zwischen template0 und template1 finden Sie im folgenden Artikel. ** ** **
[Unterschied zwischen template0 und template1 von PostgreSQL](https://db.just4fun.biz/?PostgreSQL/template0%E3%81%A8template1%E3%81%AE%E9%81%95%E3%81%84%E3 % 81% AB% E3% 81% A4% E3% 81% 84% E3% 81% A6)
Da die Standarddatenbank SQLite ist, geben Sie PostgreSQL mit der Option -d
an.
Terminal
$ rails new sample -d postgresql
database.yml
Geben Sie für die Vorlage "template0" an, mit der eine saubere Datenbank erstellt werden kann.
config/database.yml
default: &default
adapter: postgresql
encoding: unicode
template: template0
pool: <%= ENV.fetch("RAILS_MAX_THREADS") { 5 } %>
username:In Schritt 6 festgelegter Benutzername
password:In Schritt 6 festgelegtes Passwort
Terminal
$ rails db:create
** ① Öffnen Sie die PostgreSQL-Konfigurationsdatei. ** ** **
Terminal
$ sudo vi /var/lib/pgsql/data/pg_hba.conf
** ② Bearbeiten Sie die Authentifizierungsmethode unten. ** ** **
Ändern Sie METHODE in "md5".
pg_hba.conf
.
.
.
# TYPE DATABASE USER ADDRESS METHOD
# "local" is for Unix domain socket connections only
local all all md5
# IPv4 local connections:
host all all 127.0.0.1/32 md5
# IPv6 local connections:
host all all ::1/128 md5
[Häufig verwendete Authentifizierungsmethode]
ident
: Der DB-Besitzer authentifiziert sich, wenn er mit dem Benutzernamen des Betriebssystems übereinstimmt, auf dem die Shell ausgeführt wird.
md5
: Authentifizieren Sie sich mit einem Passwort.
trust
: Keine Authentifizierung.
** [Vor dem Login] **
sudo service postgresql start
: Start
sudo service postgresql stop
: Stop
sudo service postgresql restart
: Neustart
sudo -u postgres psql
: Login
** [Nach dem Login] **
\ q
: Abmelden
\?
: Hilfeanzeige
\ l
: Datenbanklistenanzeige
\ du
: Benutzerlistenanzeige
\ c Datenbankname
: Verbindung zur Datenbank herstellen
\ z
: Tabellenlistenanzeige
Recommended Posts