hypinotic 0 Denunciar post Postado Maio 21, 2011 Galera, estou realizando uma consulta muito simples no ORACLE, que deve retornar 30mil registros. Quando executo ela por localhost, vem rapidao, mas quando jogo ela no servidor online e mudo o HOST para o IP do banco, demora mais de 10 minutos. Alguem sabe o que pode estar acontecendo e o que posso fazer para melhorar? segue o código: $SqlOracle = "SELECT * FROM produtos"; $db = "(DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = IP EXTERNO)(PORT = 1521))(CONNECT_DATA = (SERVER = DEDICATED)(SERVICE_NAME = BANCO)))"; $conn = @OCILogon("user", "senha", $db, 'AL32UTF8') or die ("Problemas ao tentar conexão com o Banco de Dados."); $stmt = OCIParse ($conn, $SqlOracle); OCIExecute ($stmt); while (OCIFetchInto($stmt,$row,OCI_ASSOC)) { echo $row['cod']; } OCIFreeStatement($stmt); $ConOracle->finalizaConexao($conn); Compartilhar este post Link para o post Compartilhar em outros sites
Motta 645 Denunciar post Postado Maio 23, 2011 Dadas as caracteristiscas da sql creio que o gargalo é rede ou a conexão, pois select * não tem otimização possível , leem a tabela simples simplesmente. Compartilhar este post Link para o post Compartilhar em outros sites
supernoi 0 Denunciar post Postado Maio 23, 2011 Bom dia, Local a query é rapida e via rede lenta? para as duas maneiras voce utiliza o mesmo usuário, certo? Procure gargalos na rede, voce utiliza o ip mesmo ou host? O banco utiliza a configuração padrão, ou tem algo que voce tenha alterado? Começaria a investigar a rede, banda, rotas, utilização. Depois listener, confere se ha fila de espera no listener. Tenta querys com menos resultados. Flw Compartilhar este post Link para o post Compartilhar em outros sites