Commit bdd57cd7 authored by 徐鸿's avatar 徐鸿

postgresql install

parent bdf92d36
#!/bin/bash
#进入软件的制定安装目录
cp ./postgresql-10.5.tar.gz /usr/gisdeploy
cd /usr/gisdeploy
mv ../postgresql-10.5.tar.bz2 ./
tar -jxvf postgresql-10.5.tar.bz2
fi
echo "pgsql文件解压成功"
#判断用户是否存在
tar zxvf postgresql-10.5.tar.gz
echo "pgsql tar sucess"
#is postgres exist
id $postgres >& /dev/null
echo "用户postgres已存在"
if [ $? -ne 0 ]
echo "postgres exist"
if [ $? == 0 ]
then
echo "用户不存在,开始创建postgres用户"
echo "create postgres"
groupadd postgres
useradd -g postgres postgres
fi
echo "重命名postgresql并且进入安装目录"
mv /usr/local/post* /usr/local/pgsql
cd /usr/local/pgsql
#-------------------------------安装pgsql------------------------------------
echo "安装一些库文件"
yum install -y zlib zlib-devel >& /del/null
echo "开始执行configure步骤"
./configure --prefix=/usr/local/pgsql --without-readline
echo "enter postgresql dir"
rm /usr/gisdeploy/postgresql-10.5.tar.gz -rf
mv /usr/gisdeploy/postgresql-10.5 /usr/gisdeploy/pgsql/
cd /usr/gisdeploy/pgsql/
#-------------------------------pgsql------------------------------------
echo "install lib"
yum install -y zlib zlib-devel >& /dev/null
echo "configure"
./configure --prefix=/usr/gisdeploy/pgsql --without-readline
if [ $? == 0 ]
then
echo "configure配置通过,开始进行make编译"
echo "configure finish make"
make
if [ $? == 0 ]
then
echo "make编译通过,开始进行make install安装步骤"
echo "start make"
make install
if [ $? != 0 ];then
echo "make install安装失败"
echo "make install fail"
fi
echo "安装成功"
echo "make install sucess"
else
echo "make编译失败,检查错误。"
echo "make fail"
fi
else
echo "configure检查配置失败,请查看错误进行安装库文件"
echo "configure check error"
fi
echo "开始进行pgsql的配置"
echo "给pgsql创建data目录"
mkdir -p /usr/local/pgsql/data
echo "修改用户组"
chown -R postgres:postgres /usr/local/pgsql
echo "添加环境变量,进入postgres用户的家目录"
echo "configure pgsql"
echo "create pgsql data dir"
mkdir -p /usr/gisdeploy/pgsql/data
echo "modify group"
chown -R postgres:postgres /usr/gisdeploy/pgsql
echo "add env"
cd /home/postgres
if [ -f .bash_profile ] ;then
cp .bash_profile .bash_profile.bak
echo "export PGHOME=/usr/local/pgsql" >> .bash_profile
echo "export PGDATA=/usr/local/pgsql/data" >> .bash_profile
echo "export PGHOME=/usr/gisdeploy/pgsql" >> .bash_profile
echo "export PGDATA=/usr/gisdeploy/pgsql/data" >> .bash_profile
echo "PATH=$PGHOME/bin:$PATH" >> .bash_profile
echo "MANPATH=$PGHOME/share/man:$MANPATH" >> .bash_profile
echo "LD_LIBRARY_PATH=$PGHOME/lib:$LD_LIBRARY_PATH" >> .bash_profile
fi
alias pg_start='pg_ctl -D $PGDATA -l /usr/local/pgsql/logfile start'
alias ps_stop='pg_ctl -D $PGDATA -l /usr/local/pgsql/logfile stop'
echo "切换至postgres用户来初始化数据库"
su - postgres -c "/usr/local/pgsql/bin/initdb -D /usr/local/pgsql/data"
alias pg_start='pg_ctl -D $PGDATA -l /usr/gisdeploy/pgsql/logfile start'
alias ps_stop='pg_ctl -D $PGDATA -l /usr/gisdeploy/pgsql/logfile stop'
echo "postgres init"
su - postgres -c "/usr/gisdeploy/pgsql/bin/pg_ctl -D /usr/gisdeploy/pgsql/data -l logfile start"
echo "---------------------------------------------------------------------------------------"
echo "---------------------------------------------------------------------------------------"
echo "----------------------------SUCCESS INSTALLATION OF POSTGRESQL-------------------------"
\ No newline at end of file
echo "----------------------------finish-------------------------"
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment