来源:https://blog.csdn.net/kmust20093211/article/details/44359053
1.先安装postgresql
brew install postgresql
2.查看已安装的pg版本
pg_ctl -V
3.安装成功之后,安装路径为
/usr/local/var/postgres
4.初始化数据库
initdb /usr/local/var/postgres
initdb /usr/local/var/postgres -E utf8
备注:方法很多,不止一种。
5.手动启动数据库
pg_ctl -D /usr/local/var/postgres -l /usr/local/var/postgres/server.log start
6.查看数据库状态:
pg_ctl -D /usr/local/var/postgres -l /usr/local/var/postgres/server.log status
停止:
pg_ctl -D /usr/local/var/postgres -l /usr/local/var/postgres/server.log stop -s -m fast
7.查看数据库进程:
ps -ef |grep postgres 或 ps auxwww | grep postgres
8.创建一个数据库用户:
createuser username -P
9.创建数据库:
createdb dbname -O username -E UTF8 -e
这样就建好了,本地就可以用pgAdmin访问了。
从其他数据库导入导出表结构和数据以后再说。
10.远程导出表结构和数据:
pg_dump -h 104.236.131.89 hold -U hold -p 5432 -f hold.dump
11.远程导出表结构,不带数据,因为数据量一般都很大,导出超级慢,所有可以只导出表结构:
pg_dump -s -h 104.236.131.89 hold -U hold -p 5432 -f hold.dump
导入本地数据库:
psql -h 0.0.0.0 hold -U hold -p 5432 -f hold.dump
特别注意:如果你用上述的命令启动失败,就去 /usr/local/var/postgres/server.log 查看错误日志,比如我启动报错:
LOG: could not translate host name "localhost", service "5432" to address: nodename nor servname provided, or not known
WARNING: could not create listen socket for "localhost"
FATAL: could not create any TCP/IP sockets
看错误是localhost的问题,无法翻译主机名"localhost",到配置文件 /usr/local/var/postgres/postgresql.conf 里修改一下配置文件:
listen_addresses = '0.0.0.0' # what IP address(es) to listen on;
comma-separated list of addresses;
defaults to 'localhost'; use '*' for all
(change requires restart)
port = 5432 # (change requires restart)
把listen_addresses由"localhost"改为"0.0.0.0"即可。
重新用启动命令启动一下数据库就OK。
!