{"id":161,"date":"2008-09-03T11:58:00","date_gmt":"2008-09-03T14:58:00","guid":{"rendered":"http:\/\/www.soudba.com.br\/?p=161"},"modified":"2008-09-03T11:58:00","modified_gmt":"2008-09-03T14:58:00","slug":"instalar-o-apex-em-um-banco-oracle","status":"publish","type":"post","link":"https:\/\/www.soudba.com.br\/?p=161","title":{"rendered":"Instalar o APEX em um banco ORACLE"},"content":{"rendered":"<p>Nos temos a tarefa de instalar o APEX em um banco oracle standard ou enterprise.<br \/>Usamos no dia a dia o APACHE para as operacoes corriqueiras para internet. Usando o banco para instalar os pacotes do APEX e o listener para que possamos ativar o acesso via protocolo HTTP para acessar a funcionalidade do APEX via browser local na maquina.<\/p>\n<p>Vamos a instalacao:<\/p>\n<p>Verifique se o seu banco contem a OPCAO de XML. Se caso nao existir, instale seguindo os passos referente ao link:<\/p>\n<p>http:\/\/www.soudba.com.br\/2008\/09\/instalando-o-xml-no-banco-oracle.html<\/p>\n<p>Aqui demonstraremos como instalar no WINDOWS, para proceder em linux somente substituia a pasta onde ficara o apex pela de sua preferencia.<\/p>\n<p>Primeiro descompacte o arquivo, apex_3.1.1 na pasta c:apex<\/p>\n<p>conecte-se ao ORACLE, crie a tablespace abaixo.<\/p>\n<p>sqlplus \/ as sysdba<\/p>\n<p>CREATE TABLESPACE APEX datafile &#8216;C:oraclexeoradataXEAPEX.dbf&#8217;<br \/>SIZE 500M<br \/>EXTENT MANAGEMENT LOCAL<br \/>SEGMENT SPACE MANAGEMENT AUTO;<br \/>CREATE TABLESPACE APEX_FILES datafile &#8216;C:oraclexeoradataXEAPEX_FILES.dbf&#8217;<br \/>SIZE 100M<br \/>EXTENT MANAGEMENT LOCAL<br \/>SEGMENT SPACE MANAGEMENT AUTO;<\/p>\n<p>Va ate a pasta que voce descompactou o APEX<\/p>\n<p>cd apex<\/p>\n<p>Rode o script para criar o APEX dentro do sqlplus.<\/p>\n<p>sqlplus \/ as sysdba<br \/>@apexins htmldb APEX APEX_FILES TEMP \/i\/<\/p>\n<p>se acontecer problemas, apague o usuario e tente novamente.<\/p>\n<p>DROP USER FLOWS_030000 CASCADE;<\/p>\n<p>Execute o comando abaixo, que carrega as imagens dentro do banco de dados, para sejam mostradas dentro do aplicativo APEX quando voce estiver trabalhando com ele.<\/p>\n<p>@apxldimg.sql C:Apex<\/p>\n<p>Se solicitar para informar novamente ou paralisar em um prompt, informe<br \/>c:apex\/images\/<\/p>\n<p>Geralmente identico ao que ele proprio informou na etapa de construcao do comando, portanto recomendo copiar o caminho montado, a partir da instrucao que vai ser mostrada na execucao do script.<\/p>\n<p>Troque a senha, para uma de sua preferencia.<\/p>\n<p>@apxxepwd.sql suasenha<\/p>\n<p>Ainda dentro do sqlplus execute:<\/p>\n<p>call dbms_xdb.setHttpPort(80);<br \/>call dbms_xdb.setFtpPort(21);<br \/>ALTER system register;<br \/>@apex_epg_config.sql&nbsp; \/i<\/p>\n<p>Se ainda persistir problemas veja se exitem objetos invalidos recompile  use utlrp.sql<\/p>\n<p>Isso ira habilitar o seu listener para escutar as requisicoes em HTTP e FTP.<\/p>\n<p>saia do sqlplus, faca o teste do listener.<\/p>\n<p>lsnrctl start<br \/>lsnrctl services<\/p>\n<p>c:Documents and Settingsoracle&gt;lsnrctl status<\/p>\n<p>LSNRCTL for 32-bit Windows: Version 10.2.0.3.0 &#8211; Production on 18-DEC-2006 14:28:05<\/p>\n<p>Copyright (c) 1991, 2006, Oracle.  All rights reserved.<\/p>\n<p>Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=localhost)(PORT=1521)))<br \/>STATUS of the LISTENER<br \/>\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014<br \/>Alias                     LISTENER<br \/>Version                   TNSLSNR for 32-bit Windows: Version 10.2.0.3.0 &#8211; Produ<br \/>ction<br \/>Start Date                18-DEC-2006 13:24:27<br \/>Uptime                    0 days 1 hr. 3 min. 38 sec<br \/>Trace Level               off<br \/>Security                  ON: Password or Local OS Authentication<br \/>SNMP                      OFF<br \/>Listener Parameter File   F:oracleproduct10.2.0db_1NETWORKADMINlistener.o<br \/>ra<br \/>Listener Log File         F:oracleproduct10.2.0db_1networkloglistener.log<\/p>\n<p>Listening Endpoints Summary\u2026<br \/>(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=localhost)(PORT=1521)))<br \/>(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=localhost)(PORT=80))(Presentation=HT<br \/>TP)(Session=RAW))<br \/>(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=localhost)(PORT=21))(Presentation=FT<br \/>P)(Session=RAW))<br \/>Services Summary\u2026<br \/>Service &#8220;LAB&#8221; has 2 instance(s).<br \/>Instance &#8220;LAB&#8221;, status UNKNOWN, has 1 handler(s) for this service\u2026<br \/>Instance &#8220;lab&#8221;, status READY, has 1 handler(s) for this service\u2026<br \/>Service &#8220;labXDB&#8221; has 1 instance(s).<br \/>Instance &#8220;lab&#8221;, status READY, has 1 handler(s) for this service\u2026<br \/>Service &#8220;lab_XPT&#8221; has 1 instance(s).<br \/>Instance &#8220;lab&#8221;, status READY, has 1 handler(s) for this service\u2026<br \/>The command completed successfully<\/p>\n<p>Agora abra o browser, faca o teste:<\/p>\n<p>http:\/\/NOMEDASUAMAQUINA\/apex nao use o IP 127.0.0.1 da erro ao acessar via xmldb.<\/p>\n<p>http:\/\/NOMEDASUAMAQUINA\/apex\/ e http:\/\/NOMEDASUAMAQUINA\/apex\/apex_admin.<\/p>\n<p>Use as senhas abaixo<\/p>\n<p>Workspace \u2013 internal<br \/>Username \u2013 Admin<br \/>Password \u2013 suasenha<\/p>\n<p>Se ficar insistindo em pedir uma senha do usuario XDB, execute o script abaixo no sqlplus.<\/p>\n<p>ALTER user anonymous account UNLOCK;<br \/>ALTER system SET shared_servers = 5;<br \/>ALTER system register;<\/p>\n<p>EXEC DBMS_EPG.authorize_dad ( dad_name =&gt; &#8216;APEX&#8217;, user =&gt; &#8216;ANONYMOUS&#8217; );<\/p>\n<p># Link de referencia:<\/p>\n<p>http:\/\/www.pythian.com\/news\/2014\/installing-apex-on-oracle-10gr2-on-mac-os-x-leopard-intel<\/p>\n<p>DECLARE<br \/>configxml XMLType;<br \/>configxml2 XMLType;<br \/>BEGIN<br \/>&#8212; Get the current configuration<br \/>configxml := DBMS_XDB.cfg_get();<\/p>\n<p>&#8212; Modify the configuration<br \/>SELECT INSERTCHILDXML(<br \/>configxml,<br \/>&#8216;\/xdbconfig\/sysconfig\/protocolconfig\/httpconfig&#8217;,<br \/>&#8216;allow-repository-anonymous-access&#8217;,<br \/>XMLType(&#8216;&lt;allow-repository-anonymous-access xmlns=&#8221;http:\/\/xmlns.oracle.com\/xdb\/xdbconfig.xsd&#8221;&gt;true&lt;\/allow-repository-anonymous-access&gt;&#8217;),<br \/>&#8216;xmlns=&#8221;http:\/\/xmlns.oracle.com\/xdb\/xdbconfig.xsd&#8221;&#8216;)<br \/>INTO configxml2 FROM DUAL;<br \/>&#8212; Update the configuration to use the modified version<br \/>DBMS_XDB.cfg_update(configxml2);<br \/>END;<br \/>\/<\/p>\n<pre><span style=\"font-family:Georgia, serif;\"><\/span><br \/><br \/><br \/><blockquote><\/blockquote><span style=\"font-family:Georgia, serif;\"><\/span><span style=\"font-family:Georgia, serif;\"><br \/>Se ocorrer que ja existe a entrada do anonymous execute o proximo script:<\/span><\/pre>\n<p>CONN sys\/password AS SYSDBA<\/p>\n<p>SET SERVEROUTPUT ON<br \/>DECLARE<br \/>l_configxml XMLTYPE;<br \/>l_value     VARCHAR2(5) := &#8216;true&#8217;; &#8212; (true\/false)<br \/>BEGIN<br \/>l_configxml := DBMS_XDB.cfg_get();<\/p>\n<p>IF l_configxml.existsNode(&#8216;\/xdbconfig\/sysconfig\/protocolconfig\/httpconfig\/allow-repository-anonymous-access&#8217;) = 0 THEN<br \/>&#8212; Add missing element.<br \/>SELECT insertChildXML<br \/>(<br \/>l_configxml,<br \/>&#8216;\/xdbconfig\/sysconfig\/protocolconfig\/httpconfig&#8217;,<br \/>&#8216;allow-repository-anonymous-access&#8217;,<br \/>XMLType(&#8221; ||<br \/>l_value ||<br \/>&#8221;),<br \/>&#8216;xmlns=&#8221;http:\/\/xmlns.oracle.com\/xdb\/xdbconfig.xsd&#8221;&#8216;<br \/>)<br \/>INTO   l_configxml<br \/>FROM   dual;<\/p>\n<p>DBMS_OUTPUT.put_line(&#8216;Element inserted.&#8217;);<br \/>ELSE<br \/>&#8212; Update existing element.<br \/>SELECT updateXML<br \/>(<br \/>DBMS_XDB.cfg_get(),<br \/>&#8216;\/xdbconfig\/sysconfig\/protocolconfig\/httpconfig\/allow-repository-anonymous-access\/text()&#8217;,<br \/>l_value,<br \/>&#8216;xmlns=&#8221;http:\/\/xmlns.oracle.com\/xdb\/xdbconfig.xsd&#8221;&#8216;<br \/>)<br \/>INTO   l_configxml<br \/>FROM   dual;<\/p>\n<p>DBMS_OUTPUT.put_line(&#8216;Element updated.&#8217;);<br \/>END IF;<\/p>\n<p>DBMS_XDB.cfg_update(l_configxml);<br \/>DBMS_XDB.cfg_refresh;<br \/>END;<br \/>\/<\/p>\n<p># Apache &#8211; Se for configurar o plsql Gateway<br \/>@apex_epg_config.sql \/u01\/oracle\/product\/10.2.0\/db_1.<\/p>\n<p># Enabling Oracle XML DB HTTP Server, shared servers and unlocking ANONYMOUS user :<\/p>\n<p>call dbms_xdb.setHttpPort(8080);<br \/>alter system set shared_servers = 5;<br \/>alter system register;<br \/>alter user anonymous account unlock;<\/p>\n<p>##########################################################<br \/>TRADUZIR O APEX PARA PORTUGUES BRASIL<br \/>##########################################################<br \/>Va ao diretorio de instalacao do APEX, localize o script, @load_pt_br.sql.<br \/>Se quiser carregar todas as tradu\u00e7\u00f5es, execute o script @load_trans.sql.<br \/>Obrigado configurar a variavel de ambiente, nls_lang porque senao voce i<br \/>\nra carregar bichinhos ao inves dos assentos.<\/p>\n<p>No linux voce pode tentar rodar diretamente, ja fiz algumas vezes nao precisou<br \/>configurar a variavel mas o que esta no manual para o LINUX:<br \/>NLS_LANG=American_America.AL32UTF8<br \/>export NLS_LANG<\/p>\n<p>O que consta no manaul para o windows \u00e9 que esta abaixo,WINDOWS velho prompt:<br \/>set NLS_LANG=American_America.AL32UTF8<br \/>mesmo sendo portugues, deve se usar este caracter set.<\/p>\n<p>Para o listener ouvir alem do 127.0.0.1 fa\u00e7a:<\/p>\n<p>EXEC DBMS_XDB.SETLISTENERLOCALACCESS(FALSE);<\/p>\n<p>cd C:apexbuilderpt-br<br \/>sqlplus \/ as sysdba<br \/>ALTER SESSION SET CURRENT_SCHEMA = FLOWS_030100;<br \/>@load_pt-br.sql;<br \/>exit;<\/p>\n<p>Tente novamente no browser. Neste ponto a APEX ja estara funcional.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Nos temos a tarefa de instalar o APEX em um banco oracle standard ou enterprise.Usamos no dia a dia o APACHE para as operacoes corriqueiras para internet. Usando o banco para instalar os pacotes do APEX e o listener para &hellip; <a href=\"https:\/\/www.soudba.com.br\/?p=161\">Continue lendo <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[18,21,124,126,270,315],"tags":[],"class_list":["post-161","post","type-post","status-publish","format-standard","hentry","category-apex-install","category-apex-problemas-login-xdb","category-instalacao-do-apex","category-instalar-apex-oracle-sem-apache","category-sem-o-apache-para-rodar-apex","category-traduzir-apex"],"_links":{"self":[{"href":"https:\/\/www.soudba.com.br\/index.php?rest_route=\/wp\/v2\/posts\/161","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.soudba.com.br\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.soudba.com.br\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.soudba.com.br\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.soudba.com.br\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=161"}],"version-history":[{"count":0,"href":"https:\/\/www.soudba.com.br\/index.php?rest_route=\/wp\/v2\/posts\/161\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.soudba.com.br\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=161"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.soudba.com.br\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=161"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.soudba.com.br\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=161"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}