Criando com rapidez um banco de dados no PostgreSQL
Publicado por Rodrigo 09/03/2007
[ Hits: 6.489 ]
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
Administração de usuários em shell script
Varredura com Nmap a procura do serviço Apache
Script para trocar textos em arquivos
Nenhum comentário foi encontrado.
Faça suas próprias atualizações de pacotes/programas no Void Linux e torne-se um Contribuidor
Como rodar o Folding@home no Linux
Criando um painel de controle (Dashboard) para seu servidor com o Homepage
O Abismo entre o Código e o Chão: Saltos Tecnológicos e a Exclusão Estrutural no Brasil
Instalar e Configurar a santíssima trindade (PAP) no Void Linux
Pisando no acelerador do Linux Mint: Kernel XanMod, zRAM e Ajustes de Swap
Como compilar kernel no Linux Mint
Lançamento do Brutal DOOM test 6
Consertando o erro no Brave de webgl
Solução para ter de volta as bordas e barra de títulos das janelas em zenity no Debian 13.x
SystemD e mais polêmicas. (12)
Qual melhor distro para esse notebook? (5)
Novos requisitos de sistema para a versão 26.04 (7)









