{"id":13700,"date":"2019-02-25T18:51:00","date_gmt":"2019-02-25T21:51:00","guid":{"rendered":"http:\/\/gianfratti.com\/?p=13700"},"modified":"2019-02-25T18:54:43","modified_gmt":"2019-02-25T21:54:43","slug":"oracle-sqlplus-tnsping-conectividade-service-name-tns","status":"publish","type":"post","link":"http:\/\/gianfratti.com\/index.php\/oracle-sqlplus-tnsping-conectividade-service-name-tns\/","title":{"rendered":"Oracle &#8211; SqlPlus &#8211; TnsPing &#8211; Conectividade &#8211; Service Name &#8211; TNS"},"content":{"rendered":"<p>Ol\u00e1, recentemente eu precisei realizar alguns testes de conectividade com os servidores Oracle ent\u00e3o resolvi registrar os passos realizados para que das pr\u00f3ximas vezes eu tenha um conte\u00fado de f\u00e1cil acesso.<\/p>\n<p>O objetivo era verificar se o TNS da aplica\u00e7\u00e3o estava se conectando com sucesso ao servidor Oracle e executar o comando TNS ping a fim de validar os tempos de respostas do servidor Oracle.<a href=\"http:\/\/gianfratti.com\/wp-content\/uploads\/2019\/02\/SQLPlusTNS.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-13701 aligncenter\" src=\"http:\/\/gianfratti.com\/wp-content\/uploads\/2019\/02\/SQLPlusTNS.jpg\" alt=\"\" width=\"654\" height=\"268\" srcset=\"http:\/\/gianfratti.com\/wp-content\/uploads\/2019\/02\/SQLPlusTNS.jpg 654w, http:\/\/gianfratti.com\/wp-content\/uploads\/2019\/02\/SQLPlusTNS-300x123.jpg 300w\" sizes=\"auto, (max-width: 654px) 100vw, 654px\" \/><\/a><!--more--><\/p>\n<h2>Objetivo:<\/h2>\n<ol>\n<li>Tnsnames<\/li>\n<li>Fazer conex\u00e3o com usu\u00e1rio e senha do banco de dados no SqlPlus;<\/li>\n<li>Verificar o service name configurado no banco de dados;<\/li>\n<li>Realizar testes de TnsPing.<\/li>\n<\/ol>\n<h2>1. Tnsnames<\/h2>\n<p>O primeiro passo \u00e9 verificar o arquivo Tnsnames.ora e sua configura\u00e7\u00f5es de TNS.<\/p>\n<p>O path de instala\u00e7\u00e3o do Oracle cliente vai depender de como foi realizada, mas se foi realizada a instala\u00e7\u00e3o default ficaria:<\/p>\n<p>Vers\u00e3o 32 Bits<br \/>\nc:\\app\\Oracle\\product\\11.2.0\\client_1\\network\\admin\\tnsnames.ora<\/p>\n<p>Vers\u00e3o 64 Bits<br \/>\nc:\\app\\Oracle\\product\\11.2.0\\client_2\\network\\admin\\tnsnames.ora<\/p>\n<p>No meu caso minha aplica\u00e7\u00e3o roda em um Pool do IIS configurado para usar a vers\u00e3o 32 bits, logo irei abrir o Tnanames.ora da pasta &#8220;Client_1&#8221; e verificar as configura\u00e7\u00f5es de acesso ao banco de dados Oracle.<\/p>\n<p><strong>BancoHomologacao<\/strong> =<br \/>\n(DESCRIPTION =<br \/>\n(ADDRESS = (PROTOCOL = TCP)(HOST = <strong>Srv01<\/strong>)(PORT = <strong>1521<\/strong>))<br \/>\n(CONNECT_DATA =<br \/>\n(SERVER = DEDICATED)<br \/>\n(SERVICE_NAME = <strong>hmlsrv<\/strong>)<br \/>\n)<br \/>\n)<\/p>\n<p>Conforme configura\u00e7\u00f5es acima observamos que temos uma conex\u00e3o padr\u00e3o do banco de dados Oracle, temos um <strong>alias<\/strong> que chamamos de &#8220;BancoHomologa\u00e7\u00e3o&#8221; um <strong>host<\/strong> &#8220;Srv01&#8221; e um <strong>service name<\/strong> &#8220;hmlsrv&#8221;.<\/p>\n<h2>2. SqlPlus &#8211; Conex\u00e3o<\/h2>\n<p>Para testar se o TNS configurado no arquivo tnsnames.ora vai se conextar com sucesso ao Oracle digite o seguinte comando:<\/p>\n<ol>\n<li>Abra o CMD em modo administrador;<\/li>\n<li>Digite o comando: &#8220;sqlplus username\/password@NomeTNS&#8221;<\/li>\n<li>Digite o comando: &#8220;select value from v$parameter where name like &#8216;%service_name%&#8217;;&#8221;<\/li>\n<\/ol>\n<p>O comando executado na op\u00e7\u00e3o 3 vai retornar o nome do Service Name, o mesmo que foi usado no seu arquivo tnsnames.ora.<\/p>\n<h2>3. Service Name<\/h2>\n<p>Por mais que voc\u00ea j\u00e1 saiba o nome do &#8220;service name&#8221;, pois o mesmo j\u00e1 foi informado nas configura\u00e7\u00f5es de TNS e inclusive voc\u00ea j\u00e1 se conectou na etapa 02 desse tutorial voc\u00ea pode querer saber se existe outros &#8220;services names&#8221; para esse TNS, ent\u00e3o voc\u00ea pode executar o comando abaixo apos estar se conectado ao Oracle, conforme descrito no passo 02 desse tutorial.<\/p>\n<p>select value from v$parameter where name like &#8216;%service_name%&#8217;;<\/p>\n<h2>4. TNS Ping<\/h2>\n<p>Para testar se a conex\u00e3o TNS pode conectar-se ao listener, digite o seguinte comando:<\/p>\n<p><strong>tnsping database_instance_name 10<br \/>\n<\/strong><\/p>\n<p>Obs:<br \/>\n<strong>database_instance<\/strong> pode ser: TNS do seu arquivo tnsnames.ora, IP direto do Servidor, URL do Scan ou Balance\/Cluster<br \/>\nO n\u00famero <strong>10<\/strong> ap\u00f3s o comendo significa a quantidade de testes que ser\u00e1 realizado.<\/p>\n<p>O comando solicita confirma\u00e7\u00e3o de que o nome do servi\u00e7o \u00e9 v\u00e1lido e que o listener que est\u00e1 configurado para manipular solicita\u00e7\u00f5es para esse nome do servi\u00e7o.<\/p>\n<p>Se a configura\u00e7\u00e3o estiver correta, uma mensagem ser\u00e1 exibida mostrando o tempo de retorno.<\/p>\n<p>Se a configura\u00e7\u00e3o n\u00e3o estiver correta, o comando retornar\u00e1 uma mensagem de erro. Assegure-se de utilizar o nome de servi\u00e7o correto que o listener esteja iniciado no servidor.<\/p>\n<p>Bom era isso, espero que isso possa ter ajudado.<\/p>\n<p>Abs,<\/p>\n<p>Fabrizio Gianfratti<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Ol\u00e1, recentemente eu precisei realizar alguns testes de conectividade com os servidores Oracle ent\u00e3o resolvi registrar os passos realizados para que das pr\u00f3ximas vezes eu tenha um conte\u00fado de f\u00e1cil acesso. O objetivo era verificar se o TNS da aplica\u00e7\u00e3o estava se conectando com sucesso ao servidor Oracle e executar o comando TNS ping a <span class=\"ellipsis\">&hellip;<\/span> <span class=\"more-link-wrap\"><a href=\"http:\/\/gianfratti.com\/index.php\/oracle-sqlplus-tnsping-conectividade-service-name-tns\/\" class=\"more-link\"><span>Read More &rarr;<\/span><\/a><\/span><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_exactmetrics_skip_tracking":false,"_exactmetrics_sitenote_active":false,"_exactmetrics_sitenote_note":"","_exactmetrics_sitenote_category":0,"_jetpack_memberships_contains_paid_content":false,"footnotes":""},"categories":[20,82],"tags":[83,246,247,245],"class_list":["post-13700","post","type-post","status-publish","format-standard","hentry","category-dicas","category-oracle","tag-oracle","tag-service-name","tag-sql-plus","tag-tns"],"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"http:\/\/gianfratti.com\/index.php\/wp-json\/wp\/v2\/posts\/13700","targetHints":{"allow":["GET"]}}],"collection":[{"href":"http:\/\/gianfratti.com\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/gianfratti.com\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/gianfratti.com\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/gianfratti.com\/index.php\/wp-json\/wp\/v2\/comments?post=13700"}],"version-history":[{"count":2,"href":"http:\/\/gianfratti.com\/index.php\/wp-json\/wp\/v2\/posts\/13700\/revisions"}],"predecessor-version":[{"id":13703,"href":"http:\/\/gianfratti.com\/index.php\/wp-json\/wp\/v2\/posts\/13700\/revisions\/13703"}],"wp:attachment":[{"href":"http:\/\/gianfratti.com\/index.php\/wp-json\/wp\/v2\/media?parent=13700"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/gianfratti.com\/index.php\/wp-json\/wp\/v2\/categories?post=13700"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/gianfratti.com\/index.php\/wp-json\/wp\/v2\/tags?post=13700"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}