postgresql 安装
Posted knowledge-is-power
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了postgresql 安装相关的知识,希望对你有一定的参考价值。
参考:https://www.postgresql.org/docs/current/install-procedure.html
完事开头难!!!如果想了解一门技术,看文档必不可少,实操更不可少,这篇博文记录了自己学习postgesql的测试安装文档,由于对pg的参数了解甚少,目前使用的默认的参数。
1、下载安装介质、解压并配置软连接
https://www.postgresql.org/download/ 找到 Source code-> 点击 file browser链接 https://www.postgresql.org/ftp/source/ 选择需要下载的对应版本源码安装介质 wget https://ftp.postgresql.org/pub/source/v10.5/postgresql-10.5.tar.gz 上传到/usr/local/src/postgresql-10.5.tar.gz tar zxvf /usr/local/src/postgresql-10.5.tar.gz -C /usr/local ln -s /usr/local/postgresql-10.5 /usr/local/pgsql
2、创建用户和目录并授权
useradd postgresql echo "123456" | passwd --stdin postgresql mkdir -pv /dbdata/pgsql10.5/pg5432/data chown postgresql:postgresql /usr/local/pgsql chown postgresql:postgresql /dbdata/pgsql10.5/pg5432/data
3、用户postgresql配置环境变量
export PGHOME=/usr/local/pgsql export PGDATA=/dbdata/pgsql10.5/pg5432/data export PGUSER=postgresql LD_LIBRARY_PATH=$PGHOME/lib:/lib64:/usr/lib64:/usr/local/lib64:/lib:/usr/lib:/usr/local/lib:/usr/include export LD_LIBRARY_PATH export PATH=$PGHOME/bin:$PATH:. export MANPATH=$PGHOME/share/man:$MANPATH
4、编译并安装
cd /usr/local/pgsql ./configure --prefix=/usr/local/pgsql --with-pgport=5432 gmake gmake world gmake install gmake install-world 说明: /usr/local/pgsql/configure --help | grep size --with-blocksize=BLOCKSIZE set table block size in kB [8] --with-segsize=SEGSIZE set table segment size in GB [1] --with-wal-blocksize=BLOCKSIZE set WAL block size in kB [8] --with-wal-segsize=SEGSIZE set WAL segment size in MB [16] 这些参数在编译的时候可以指定,后续初始化后就不可以重新设置了,除非重新安装的时候指定这些参数。
5.初始化
[postgresql@lxdnode2 ~]$ initdb -E UTF8 -D $PGDATA -U admin -W --locale=C The files belonging to this database system will be owned by user "postgresql". 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. Enter new superuser password: Enter it again: fixing permissions on existing directory /dbdata/pgsql10.5/pg5432/data ... ok creating subdirectories ... ok selecting default max_connections ... 100 selecting default shared_buffers ... 128MB selecting dynamic shared memory implementation ... posix creating configuration files ... ok running bootstrap script ... ok performing post-bootstrap initialization ... ok syncing data to disk ... ok WARNING: enabling "trust" authentication for local connections You 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: pg_ctl -D /dbdata/pgsql10.5/pg5432/data -l logfile start
6.启动数据库
pg_ctl -D /dbdata/pgsql10.5/pg5432/data -l logfile start
7.连接数据库
[postgresql@lxdnode2 data]$ psql
psql: FATAL: database "postgresql" does not exist
登录pg数据库的时候如果不指定-d参数默认就会找跟当前操作系统用户同名的database
[postgresql@lxdnode2 data]$ psql -d postgres -U admin
psql (10.5)
Type "help" for help.
postgres=#
这里留下一个伏笔,如果刚刚接触pg的同学可能会好奇,明明设置了admin用户的密码了,为什么登录的时候没有要求密码验证就可以登录进去呢?
以上是关于postgresql 安装的主要内容,如果未能解决你的问题,请参考以下文章
Mac + virtualenv + pip + postgresql = 错误:找不到 pg_config 可执行文件
ubuntu14.04源代码安装postgresql 9.1
在Tomcat的安装目录下conf目录下的server.xml文件中增加一个xml代码片段,该代码片段中每个属性的含义与用途