Criando com rapidez um banco de dados no PostgreSQL
Publicado por Rodrigo 09/03/2007
[ Hits: 6.502 ]
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
Script para trocar textos em arquivos
Miguxeitor.sed - converse com seus miguxos
Atualiza núcleo do sistema para Kernel 4.4 (Ubuntu)
Nenhum comentário foi encontrado.
O Journal no Linux para a guarda e consulta de logs do sistema
A evolução do Linux e as mudanças que se fazem necessárias desde o seu lançamento
Maquina modesta - a vez dos navegadores ferrarem o usuario
Fscrypt: protegendo arquivos do seu usuário sem a lentidão padrão de criptograr o disco
Sway no Arch Linux: configuração Inicial sem enrolação
Resolvendo o bloqueio do Módulo Warsaw no Arch Linux (Porta 30900)
Continuando meus tópicos anteriores (1)
Saída de loop após teste de if. (2)
Governo da França vai trocar Windows por Linux (9)
Warsaw não é reconhecido no Google Chrome 147.0.7727.55 [RESOLVIDO] (9)









