Criando com rapidez um banco de dados no PostgreSQL
Publicado por Rodrigo 09/03/2007
[ Hits: 6.444 ]
Download inicializa-banco-rapido.sh
Esse script passa seis parametros para ser informado pelo usuário.
Ao final do processo, um banco de dados estará rodando no servidor com autenticação MD5 para logar no banco.
Esse script pode ajudar administradores de banco de dados PostgreSQL.
#!/bin/bash
# 1 = diretorio ; 2 = IP ; 3 = Porta ; 4 = Database_name ; 5 usuario ; 6 script
if [ -z $1 ] || [ -z $2 ] || [ -z $3 ] || [ -z $4 ] || [ -z $5 ] || [ -z $6 ]
then
echo
#clear
echo -ne "{FONTE}33[31m**********************************************************{FONTE}33[m\n"
echo -ne '{FONTE}33[31mPara utilizar o script, forneca pelo menos seis parametros{FONTE}33[m\n'
echo -ne "{FONTE}33[31m**********************************************************{FONTE}33[m\n"
echo
echo -ne "{FONTE}33[31mEsse é um script rapido para gerar um banco de dado no Postgres{FONTE}33[m\n"
echo -ne "{FONTE}33[31m./inicializa-banco-rapido.sh {DIR_BANCO} {IP} {PORTA} {DATBASE_NAME} {USER_DATABSE } {PATH_SCRIPT}{FONTE}33[m\n"
echo -ne "{FONTE}33[31mExemplo: /opt/infra 192.168.1.133 5432 LIVROS root /opt/script.sh{FONTE}33[m\n"
exit 0
fi
mkdir $1
chown -R postgres $1
chmod -R 700 $1
su postgres -c "/usr/local/pgsql/bin/initdb -D $1"
# Remove linha do diretório do banco
sed -i '56d' $1/postgresql.conf
sed -i '128d' $1/postgresql.conf
# Insere a linha apos um trecho de texto
sed -i "/superuser_reserved_connections = 2/ a\unix_socket_directory= '$1'" $1/postgresql.conf
sed -i "/# - Archiving -/ a\archive_command = 'cp -i %p /mnt/server/archivedir/%f </dev/null'" $1/postgresql.conf
# Remove comentarios das linhas 48,50,64
sed -i "48 s/^#//" $1/postgresql.conf
sed -i "50 s/^#//" $1/postgresql.conf
sed -i "64 s/^#//" $1/postgresql.conf
sed -i "128 s/^#//" $1/postgresql.conf
# Coloca IP
AUXIP=`cat $1/postgresql.conf | grep "localhost" | awk '{print $3}' | head -n1`
echo $AUXIP > /tmp/file
IP=`cat /tmp/file | cut -f2 -d "'"`
INPUT=$2
sed -i "s/$IP/$INPUT/g" $1/postgresql.conf
PORT=5432
# Coloca porta
sed -i "s/$PORT/$3/g" $1/postgresql.conf
# Inicia Postgres
su postgres -c "/usr/local/pgsql/bin/pg_ctl -D $1 start" &> /dev/null
echo "Aguarde 5 segundos"
sleep 5
# Cria DATABASE
su postgres -c "/usr/local/pgsql/bin/createuser -p $3 -a -d $5 -h $1"
su postgres -c "/usr/local/pgsql/bin/createdb -p $3 -E LATIN1 $4 -h $1"
su postgres -c "/usr/local/pgsql/bin/psql -p $3 -d $4 -U $5 -h $1 -f $6"
#Coloca auth de senha, removendo o trust
sed -i '71,75 s/trust/md5/g' $1/pg_hba.conf
su postgres -c "/usr/local/pgsql/bin/pg_ctl -D $1 reload" &> /dev/null
Adicionar e Remover Dominios Virtuais do Apache
Converter arquivos CSV para Ldif
Nenhum comentário foi encontrado.
Cinnamon seria a aposta acertada frente às outras interfaces gráficas mais populares?
KDE Plasma - porque pode ser a melhor opção de interface gráfica
Gentoo: detectando impressoras de rede e como fixar uma impressora por IP
Como o GNOME conseguiu o feito de ser preterido por outras interfaces gráficas
Por que sua empresa precisa de uma PKI (e como automatizar EMISSÕES de certificados via Web API)
Instalando NoMachine no Gentoo com Systemd (acesso Remoto em LAN)
Vou destruir sua infância:) (8)
Interface gráfica com problema (2)
Instalar Linux em notebook Sony Vaio VPCEG13EB (13)









