Eu criei um monstro!
Apache PHP JAVA TOMCAT MYSQL POSTGRESQL SSL ...
Muitos nomes, pois bem assim esta minha maquina hoje, e tende a crescer. Um pequeno monstro! Devido aos meus estudos e sede de coisas novas, mas também pela produtividade no trabalho e por esta fazendo um curso sobre JAVA aplicações distribuídas, na
infnet .
Como fiz isso tudo e possa ser necessário fazer de novo ou alguém pode, como eu estava até ainda agora, precisar deste conteúdo, post novo de how-to! Eba.
O que vamos fazer, descrição:
Instalar o servidor
Apache, com os módulos para
PHP e o
Tomcat, jsp e servlets, e faze-los funcionar em paralelo, com direito a OpenSSL para certificados digitais. Instalar e configurar os bancos de dados
MySql e
PostgreSQL. Isso no Debian 4 etch, mas deve funcionar nos baseados no debian qualquer versão, incluído o ubuntu, o kurumin, mas isso eu não confirmo(se alguém me confirmar eu agradeço muito!).
A primeira parte é bem fácil, instalando e configurando o Apache com php5 e algumas bibliotecas para o mesmo:
# apt-get install apache2 php5 apache2-mod-php5 php5-gd php5-mcrypt
Isso irá instalar, na ordem, o apache2, o php5, o modulo para o apache comunicar com o php5, gd(biblioteca gráfica) para o php, e uma biblioteca de encriptação também. Tem muitas outras, mais por hora apenas essas.
Para rodar o apache basta executar o comando, já com php ativado:
# apache2
Para parar use "apache2ctl stop" e reiniciar "apache2ctl restart". O Diretório padrão é /var/www , lá você pode colocar seus sites ou, melhor na minha opinião, linkar sua pasta padrão, eu fiz assim:
# ln -s /home/diogo/worspace /var/www
Assim sempre que quiser acessar um projeto eu abro o navegador e entro com: "localhost/projeto".
Os arquivos de configurações ficam em /etc/apache2 , são os arquivos fragmentados. Os módulos ativos ficam em mods-eneabled.
Agora os bancos de dados, mysql primeiro:
# apt-get install mysql-server-5.0 mysql-cliente-5.0 mysql-admin php5-mysql
Instala, na ordem, o servidor mysql em si, um cliente para acesso via terminal e um cliente gráfico. Por ultimo o modulo para o PHP. Para ver os efeitos, tem que reiniciar o apache, e executar o mysqld (MySql Daemon, para o servidor ficar rodando). Você pode usar o mysql-admin (haverá uma entrada no menu) ou o mysql via terminal. Via terminal, como usuario normal:
$ mysql -l localhost -D database -u usuario -p
ou , para passar um arquivo com instruções sql:
$ mysql -l localhost -D database -u usuario -p < arquivo.sql
Assim vai pedir a senha do usuario cadastrado. A sintaxe básica para criar a primeira base de dados e usuario no mysql é assim, como root: # mysql
mysql>create database nome_do_banco_de_dados ;
mysql>GRANT select,update,insert,delete,alter,show,create,index,drop ON nome_do_banco_de_dados.* TO usuario IDENTIFIED BY 'senha' ;
Isso garante os comandos listados (Select...) no banco de dados informado, a todas as tabelas ( pelo * ) para o usuário indicado com a senha informada. Como o usuário não existe ele sera criado. ;)
E o postgree?
# apt-get install postgresql-8.1 postgresql-cliente-8.1 pgadmin3 php5-pgsql
Instala o servidor, o cliente terminal, o administrador gráfico e o modulo para o php. Para usar é um pouco mais complicado!
Primeiro crie uma pasta para conter o banco de dados:
# mkdir -p /opt/postgre/data
# chown postgres.postgres /opt/postgre -R
# chmod 755 /opt/postgre -R
Depois edite o arquivo /etc/postgresql/8.1/main/postgresql.conf , procure as linhas abaixo e deixas assim:
listen_addresses = 'localhost'
data_directory = '/var/lib/postgresql/8.1/main/base'
OK, agora pode iniciar o servidor, como root passe ao usuário postgres:
$ su
(digite sua senha de root)
# su - postgres
(agora esta como postgres)
$ cd /usr/lib/postgres/8.1/bin
(todos os comandos são desta pasta)
Agora crie o banco de dados nesta pasta:
$ ./initdb -D /opt/postgre/data
E pode então iniciar o banco de dados, os arquivos de configuração estão na pasta do banco.
$ ./pg_ctl start -D /opt/postgre/data
Para parar use:
$ ./pg_ctl stop -D /opt/postgre/data
Agora para criar um usuário no postgre para esse banco de dados, inicio e depois abra a interface de sql com psql, então entre o seguinte sql:
CREATE ROLE nome_do_usuario LOGIN PASSWORD 'senha' NOSUPERUSER NOCREATEROLE NOCREATEDB ;
(até o ponto o vírgula ainda não terminou a instrução)
Traduzindo: CRIE O PAPEL nome_do_usuario QUE FAZ LOGIN COM PASSWORD 'senha' NAO SUPERUSUARIO(ROOT) não CRIA ROLE NAO CRIA DB ;
Após isso pode-se usar o pgamin3 como usuario comuna para administrar o banco de dados.
Ficam faltando o certificado SSL no apache, depois o JAVA e o Tomcat, até o próximo post!