Configuração do banco de dados para Oracle
Esta página fornece instruções para configurar o Confluence com o intuito de usar um banco de dados Oracle. O processo de preparação envolve a configuração do seu servidor Oracle e do seu site Confluence.
Passo 1. Verificar os pré-requisitos
Verifique o seguinte antes de começar:
- Certifique-se de que sua versão do Oracle seja com suporte. Consulte Plataformas com suporte. Se a sua versão do Oracle não for com suporte, atualize para uma versão com suporte antes de instalar o Confluence.
- Se você estiver avaliando o Confluence e desejar transferir seus dados para um novo banco de dados, consulte primeiro o guia a seguir: Migrando para outro banco de dados.
- Se você estiver migrando de outro banco de dados, consulte primeiro o guia a seguir: Migrando para outro banco de dados.
- Nota: Esse banco de dados pode ser instalado apenas por um administrador de banco de dados (DBA) Oracle. A instalação do Oracle é difícil. Se você não for um DBA e não tiver acesso a uma DBA Oracle experiente, recomendamos que escolha um banco de dados alternativo. Para obter uma lista de bancos de dados com suporte, consulte Plataformas com suporte. Se estiver avaliando o Confluence, recomendamos começar com um banco de dados alternativo e pense em migrar para o Oracle apenas após a aprovação do seu DBA. Se você solicitar o suporte técnico da Atlassian devido a dificuldades na instalação do Oracle, partiremos do princípio de que você tem alto nível de conhecimento necessário para uma instalação do Oracle.
Nesta página:
Páginas relacionadas:
Passo 2. Instalar seu servidor Oracle
Se você ainda não tiver um servidor de banco de dados Oracle operacional, baixe o pacote de instalação da página de download do Oracle e siga as instruções da documentação do Oracle.
Em seguida, siga os passos abaixo para implantar o Confluence em um esquema no seu servidor Oracle.
Nota: Seu banco de dados deve ser configurado para usar a mesma codificação de caracteres do Confluence. A codificação recomendada é AL32UTF8 (a equivalente Oracle da Unicode UTF-8). Consulte Configurando a codificação de caracteres do banco de dados.
Passo 3. Configure seu usuário Oracle com privilégios de criação de esquema
Neste passo, você criará um usuário Confluence no Oracle e concederá as devidas funções ao usuário, para que ele possa configurar uma conexão, criar objetos em seu próprio esquema e configurar o esquema.
Para criar o usuário e atribuir seus privilégios:
Acesse a interface de linha de comando para o Oracle usando o comando "
sqlplus
".sqlplus user/password <as sysdba|as sysoper>
É necessário adicionar a opção "
as sysdba
" ou "as sysoper
" se estiver fazendo login com o usuário "sys
". Isso determina que função sys você está usando.
Ao fazer login, você pode digitar comandos SQL arbitrários.Crie um usuário Confluence (
<user>
) no Oracle e conceda as devidas funções apenas para o usuário:- A função
connect
é necessária para configurar uma conexão. - A função
resource
é necessária para permitir que o usuário crie objetos em seu próprio esquema. Create table, sequence
etrigger
são necessários para configurar o esquema.create user <user> identified by <password> default tablespace <tablespace_name> quota unlimited on <tablespace_name>; grant connect to <user>; grant resource to <user>; grant create table to <user>; grant create sequence to <user>; grant create trigger to <user>;
Nota:É muito importante que o usuário receba exatamente os mesmos privilégios indicados acima. O Confluence exige apenas esses privilégios; por isso, você deve conceder privilégios específicos ao usuário e não atribuir uma função ao usuário.
Não conceda ao usuário a permissão
select any table
. Essa permissão pode causar problemas com outros esquemas. Consulte o relatório de bugs CONF-3613.Ao criar um usuário, especifique o
tablespace
para o objeto de tabela conforme mostrado acima.
- A função
Adicione uma exibição local
all_objects
ao esquema do usuário para evitar um conflito que pode ocorrer quando existe uma tabela em outro esquema com o mesmo nome de uma das tabelas do Confluence. Essa é uma solução para o bug CONF-3613:create view <user>.all_objects as select * from sys.all_objects where owner = upper('<user>');
Passo 4. Instalar o Confluence
Instale o Confluence se você ainda não tiver feito isso. Consulte o Guia de instalação do Confluence. Pare imediatamente após a instalação, antes de abrir o Assistente de Instalação do Confluence em seu navegador e siga os passos abaixo.
Se você já tiver avançado pelo Assistente de Instalação do Confluence, pare no passo de instalação do banco de dados e siga os passos abaixo. Você poderá reiniciar o assistente de instalação na mesma etapa posteriormente.
Passo 5. Determine o URL do seu JDBC
O driver pequeno do JDBC para Oracle usa três estilos de URL diferentes:
Estilo novo:
New Stylejdbc:oracle:thin:@//[HOST][:PORT]/SERVICE
Estilo antigo:
Old Stylejdbc:oracle:thin:@[HOST][:PORT]:SID
Estilo "tnsnames":
tnsnamesjdbc:oracle:thin:@(DESCRIPTION= (SDU=32768) (enable=broken) (LOAD_BALANCE=yes) (FAILOVER=yes) (ADDRESS= (PROTOCOL=TCP) (HOST=dbserver1.example.com) (PORT=1525)) (ADDRESS= (PROTOCOL=TCP) (HOST=dbserver2.example.com) (PORT=1525)) (CONNECT_DATA= (SERVICE_NAME=CONFDB)))
Nota:
- O estilo
tnsnames
é necessário para se conectar a um cluster Oracle RAC. Para facilitar a leitura, dividimos o exemplo acima em várias linhas, mas você deve compactá-lo em uma única linha. Esses valores podem precisar de mais análise do que a documentada aqui; por isso, você deve buscar o auxílio de um DBA experiente. - Se você usar o URL em estilo novo, o SERVICE pode ser um SID ou um nome de serviço.
- Se você usar o URL em estilo antigo, o SERVICE pode ser apenas o SID.
Para determinar o host, porta, nome do serviço e/ou SID, execute o seguinte comando como o usuário que executa o Oracle. (Por padrão, o usuário é "oracle"):
lsnrctl status
Para referência, temos aqui um exemplo de resultado:
SNRCTL for Linux: Version 11.2.0.2.0 - Beta on 29-JUN-2012 15:20:59
Copyright (c) 1991, 2010, Oracle. All rights reserved.
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC_FOR_XE)))
STATUS of the LISTENER
------------------------
Alias LISTENER
Version TNSLSNR for Linux: Version 11.2.0.2.0 - Beta
Start Date 06-JUN-2012 08:36:34
Uptime 23 days 6 hr. 44 min. 25 sec
Trace Level off
Security ON: Local OS Authentication
SNMP OFF
Default Service XE
Listener Parameter File /u01/app/oracle/product/11.2.0/xe/network/admin/listener.ora
Listener Log File /u01/app/oracle/diag/tnslsnr/<HOSTNAME>/listener/alert/log.xml
Listening Endpoints Summary...
(DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC_FOR_XE)))
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=<HOSTNAME>)(PORT=1521)))
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=<HOSTNAME>)(PORT=8080))(Presentation=HTTP)(Session=RAW))
Services Summary...
Service "PLSExtProc" has 1 instance(s).
Instance "PLSExtProc", status UNKNOWN, has 1 handler(s) for this service...
Service "XE" has 1 instance(s).
Instance "XE", status READY, has 1 handler(s) for this service...
Service "XEXDB" has 1 instance(s).
Instance "XE", status READY, has 1 handler(s) for this service...
The command completed successfully
Notas:
- O host e a porta são determinados pela linha que contém
PROTOCOL=tcp
, withoutPresentation=HTTP
. - Em
Services Summary
, cada serviço que tenha uma instância com status READY é um serviço conectável. O nome apósService
é um nome de serviço para se conectar ao nome do banco de dados apósInstance
na linha seguinte. - O SID é o nome da instância do banco de dados conforme definida pela variável
$ORACLE_SID
quando se envia o ambiente Oracle ao shell.
Por exemplo, partindo do princípio de que você está executando o Confluence no mesmo servidor do banco de dados Oracle, com o resultado de status lsnrctl
acima, você usaria um dos seguintes URLs:
jdbc:oracle:thin:@//localhost:1521/XE
jdbc:oracle:thin:@localhost:1521:XE
O URL pode ser usado tanto em uma conexão JDBC direta ou usando uma fonte de dados Tomcat.
Para obter mais informações sobre URLs Oracle JDBC, consulte as Perguntas frequentes do Oracle JDBC.
Passo 6. Baixe e instale o driver do banco de dados Oracle
Decida se você configurará uma conexão JDBC direta ou uma conexão de fonte de dados para o Oracle, para se adequar ao seu ambiente. Se não tiver certeza do que fazer, escolha JDBC direta.
Para configurar uma conexão JDBC direta:
Se você planeja configurar uma conexão JDBC direta ao Oracle, precisará copiar o driver Oracle JDBC para sua instalação do Confluence.
- Baixe o driver de banco de dados com suporte mais recente. Há links para os drivers de banco de dados adequados disponíveis nesta página: Drivers JDBC de banco de dados.
- Copie o arquivo JAR do driver para a pasta
<Confluence installation>
em sua nova instalação do Confluence./confluence
/WEB-INF/lib
Para configurar uma conexão de fonte de dados:
Se você planeja configurar uma conexão de fonte de dados ao Oracle, siga os passos descritos em Configurando uma fonte de dados Oracle no Apache Tomcat.
Passo 7. Configure sua conexão de banco de dados no Assistente de Instalação do Confluence
Inicie o Confluence e vá até o Assistente de Configuração do Confluence em seu navegador. Siga os passos a seguir para definir a nova configuração:
- Siga os passos iniciais no Guia de configuração do Confluence.
- Quando for pedido a você que escolha uma instalação de avaliação ou de produção, escolha instalação de produção.
- Quando for pedido a você que escolha um banco de dados integrado ou externo, selecione Oracle xx na lista suspensa, onde "xx" é a sua versão do Oracle, e escolha Banco de dados externo.
- Escolha a conexão JDBC direta ou de fonte de dados de modo a se adequar à escolha que você fez anteriormente ao configurar o driver de banco de dados do Oracle.
- Para a conexão JDBC: Insira o URL do banco de dados para que corresponda ao URL JDBC que você determinou na seção anterior. Insira o nome de usuário (por exemplo,
confluenceuser
) e a senha que você escolheu ao adicionar o banco de dados do Confluence ao Oracle. - Para uma conexão de fonte de dados: Defina o nome JNDI como
java:comp/env/jdbc/confluence
.
- Para a conexão JDBC: Insira o URL do banco de dados para que corresponda ao URL JDBC que você determinou na seção anterior. Insira o nome de usuário (por exemplo,
- Espere um pouco, pois o Confluence criará o esquema no Oracle.
Parabéns! Agora o Confluence já está usando seu banco de dados do Oracle para armazenar seus dados.
Solução de problemas
- A página a seguir contém problemas comuns encontrados durante a configuração do seu banco de dados Oracle para funcionar com o Confluence: Problemas conhecidos do Oracle.
- Se o Confluence informar que está faltando um arquivo de classe, é possível que você tenha colocado o driver JDBC na pasta errada.
- Se nenhuma das opções acima descrever o seu problema, crie um chamado de suporte em http://support.atlassian.com e não deixe de incluir seus logs (encontrados em
<CONFLUENCE-INSTALLATION>/logs
e<
).CONFLUENCE-HOME
>/logs