Manual PostgreSQL database initialization tutorial in windows, initialize postgresql
Environment: win7 64 sp1
PG: 9.3.5
1. Create the postgres user, and the password is also postgres:
net user postgres postgres /add
2. Create a data directory under the root directory of the database:
C:\Program Files\PostgreSQL\9.3>md data
3. Remove the administrator permission on the data directory:
C:\Program Files\PostgreSQL\9.3>cacls data /e /t /r administrator
Processed Directory: C: \ Program Files \ PostgreSQL \ 9.3 \ data
4. Grant the data directory permission to the ipvs User:
C:\Program Files\PostgreSQL\9.3>cacls data /e /t /g postgres:C
Processed Directory: C: \ Program Files \ PostgreSQL \ 9.3 \ data
5. Use the postgres user to open cmd
C:\Program Files\PostgreSQL\9.3>runas /user:postgres cmd.exe
Enter the postgres password:
Trying to start cmd.exe as user "SURE-PC \ postgres...
6. Perform initialization. The initialization user is ipvs, the character set is utf8, And locale is C:
C:\Program Files\PostgreSQL\9.3\bin>initdb.exe -D ../data -E utf8 --locale C -U postgresThe files belonging to this database system will be owned by user "postgres".This user must also own the server process. The database cluster will be initialized with locale "C".The default text search configuration will be set to "english". Data page checksums are disabled. fixing permissions on existing directory ../data ... okcreating subdirectories ... okselecting default max_connections ... 100selecting default shared_buffers ... 128MBcreating configuration files ... okcreating template1 database in ../data/base/1 ... okinitializing pg_authid ... okinitializing dependencies ... okcreating system views ... okloading system objects' descriptions ... okcreating collations ... not supported on this platformcreating conversions ... okcreating dictionaries ... oksetting privileges on built-in objects ... okcreating information schema ... okloading PL/pgSQL server-side language ... okvacuuming database template1 ... okcopying template1 to template0 ... okcopying template1 to postgres ... oksyncing data to disk ... ok WARNING: enabling "trust" authentication for local connectionsYou can change this by editing pg_hba.conf or using the option -A, or--auth-local and --auth-host, the next time you run initdb. Success. You can now start the database server using: "postgres" -D "../data"or "pg_ctl" -D "../data" -l logfile start C:\Program Files\PostgreSQL\9.3\bin>
7. Start the database and enter the client:
C:\Program Files\PostgreSQL\9.3\bin>"pg_ctl" -D "../data" startserver starting C:\Program Files\PostgreSQL\9.3\bin>LOG: database system was shut down at 2014-09-18 10:19:54 HKTLOG: autovacuum launcher started C:\Program Files\PostgreSQL\9.3\bin>LOG: database system is ready to accept connections C:\Program Files\PostgreSQL\9.3\bin>psql.exepsql (9.3.5)Type "help" for help. postgres=#
How to import data from PostgreSQL
Windows
Run pg_dumpall> outfile
Linux
Psql-f outfile postgres
If it is on two different computers, the virtual machine is also considered, And the ipvs service of the two computers is started at the same time.
Yes
Pg_dump-h host1 dbname | psql-h host2 dbname
If the database is relatively simple, we recommend that you directly create a logical structure such as a table in the new database and run copy table to file with csv in the old database.
Run copy table from file with csv to import data in the new database
For more information, see www.postgresql.org/...p.html.
How to use commands to open a postgresql database
Open refers to what? Start Service: pg_ctl-D Data Set name start (or S s-D Data Set Name)
Database Connection: psql Database Name