Autor Tópico: LAMP Acesso local e Externo  (Lida 15309 vezes)

Offline Anguz

  • Usuário Ubuntu
  • *
  • Mensagens: 12
    • Ver perfil
LAMP Acesso local e Externo
« Online: 26 de Janeiro de 2015, 17:40 »
Boa tarde, meu problema é o seguinte tenho um ubuntu server 14.04 rodando os serviços lamp, a bronca é seguinte quando tento rodar um script php que acessa uma base mysql externa da o seguinte erro.

Can't connect to MySQL server on 'mysql.megacall.com.br' (111)Não foi possível selecionar o banco de dados!

Ps: meu mysql local roda na porta 3308 e o externo roda na 3306.

Offline zekkerj

  • Usuário Ubuntu
  • *
  • Mensagens: 19.735
  • Gratidão gera gratidão, lamúria atrai lamúria...
    • Ver perfil
    • Blog do Zekke
Re: LAMP Acesso local e Externo
« Resposta #1 Online: 26 de Janeiro de 2015, 17:44 »
Lembrou de autorizar o acesso no servidor?
Pesquise antes de perguntar, sua dúvida pode já ter sido respondida.
Não respondo dúvidas por MP, coloque sua dúvida no fórum onde ela pode ser pesquisada pelos seus colegas!
Não venha ao fórum apenas para perguntar. Se você sabe a resposta de um problema, porque não ajudar seu colega? ;D

Offline Anguz

  • Usuário Ubuntu
  • *
  • Mensagens: 12
    • Ver perfil
Re: LAMP Acesso local e Externo
« Resposta #2 Online: 26 de Janeiro de 2015, 17:55 »
Lembrou de autorizar o acesso no servidor?

Já testei todo tipo de liberação que consegui na internet, tu tens algo mais especifico?

Ps: tenho outro servidor só que é windows(xamp) e ta rodando o mesmo script sem problemas.

Offline JuarezFranco

  • Usuário Ubuntu
  • *
  • Mensagens: 186
  • Seja livre, use ... o que vc quiser :-)
    • Ver perfil
Re: LAMP Acesso local e Externo
« Resposta #3 Online: 26 de Janeiro de 2015, 18:10 »
Ja liberou o mysql para permitir acesso externo?

aqui tem um exemplo
https://darkstrikerd.wordpress.com/2008/02/14/linux-permitindo-acesso-remoto-num-servidor-mysql/

pode mandar o script php que faz a conexão?
"Riem de mim por eu ser diferente, e eu rio de vocês por serem todos iguais." - Bob Marley

Offline Anguz

  • Usuário Ubuntu
  • *
  • Mensagens: 12
    • Ver perfil
Re: LAMP Acesso local e Externo
« Resposta #4 Online: 26 de Janeiro de 2015, 18:22 »
Ja liberou o mysql para permitir acesso externo?

aqui tem um exemplo
https://darkstrikerd.wordpress.com/2008/02/14/linux-permitindo-acesso-remoto-num-servidor-mysql/

pode mandar o script php que faz a conexão?

Já fiz essa liberação, consigo acessar remotamente o mysql que esta no ubuntu server normalmente,  o problema está quando tento rodar um script localizado no ubuntu server e a base de dados está nesse caso na kinghosting, ai dá aquele erro que postei.

Offline irtigor

  • Equipe Ubuntu
  • Usuário Ubuntu
  • *****
  • Mensagens: 4.344
  • Delete, delete, delete!
    • Ver perfil
Re: LAMP Acesso local e Externo
« Resposta #5 Online: 26 de Janeiro de 2015, 18:32 »
Já testei todo tipo de liberação que consegui na internet, tu tens algo mais especifico?

Isso é vago. O que tentou?

Instale o mysql client e tente conectar do terminal, algo como
Código: [Selecionar]
mysql --user=Usuário --password=Senha --host=Endereço --port=3306 nome_do_banco

Mostre o resultado.

Offline Anguz

  • Usuário Ubuntu
  • *
  • Mensagens: 12
    • Ver perfil
Re: LAMP Acesso local e Externo
« Resposta #6 Online: 27 de Janeiro de 2015, 09:33 »
Já testei todo tipo de liberação que consegui na internet, tu tens algo mais especifico?

Isso é vago. O que tentou?

Instale o mysql client e tente conectar do terminal, algo como
Código: [Selecionar]
mysql --user=Usuário --password=Senha --host=Endereço --port=3306 nome_do_banco

Mostre o resultado.

Segue o retorno.

Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 15946994
Server version: 5.5.40-log Source distribution

Copyright (c) 2000, 2014, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql>

Offline Anguz

  • Usuário Ubuntu
  • *
  • Mensagens: 12
    • Ver perfil
Re: LAMP Acesso local e Externo
« Resposta #7 Online: 27 de Janeiro de 2015, 10:24 »
Segue o retorno do php.

[Tue Jan 27 09:21:12.860381 2015] [:error] [pid 3615] [client 177.41.12.235:20265] PHP Warning:  mysql_select_db() expects parameter 2 to be resource, boolean given in /var/www/hiscred/higiniza_dem.php on line 20

Offline zekkerj

  • Usuário Ubuntu
  • *
  • Mensagens: 19.735
  • Gratidão gera gratidão, lamúria atrai lamúria...
    • Ver perfil
    • Blog do Zekke
Re: LAMP Acesso local e Externo
« Resposta #8 Online: 27 de Janeiro de 2015, 12:44 »
Teu erro parece ser na forma como vc está chamando a função do PHP. Talvez vc deva rever o código e/ou o manual da biblioteca.

Enquanto isso, instale o phpMyAdmin nessa máquina Ubuntu, e tente acessar o banco MySQL remoto com ele, usando o mesmo usuário/banco, pra ajudar a depurar o problema.
« Última modificação: 27 de Janeiro de 2015, 12:46 por zekkerj »
Pesquise antes de perguntar, sua dúvida pode já ter sido respondida.
Não respondo dúvidas por MP, coloque sua dúvida no fórum onde ela pode ser pesquisada pelos seus colegas!
Não venha ao fórum apenas para perguntar. Se você sabe a resposta de um problema, porque não ajudar seu colega? ;D

Offline irtigor

  • Equipe Ubuntu
  • Usuário Ubuntu
  • *****
  • Mensagens: 4.344
  • Delete, delete, delete!
    • Ver perfil
Re: LAMP Acesso local e Externo
« Resposta #9 Online: 27 de Janeiro de 2015, 14:13 »
Você conectou, então o problema tá no script. Versões diferentes do php? Bibliotecas instaladas?

Offline Anguz

  • Usuário Ubuntu
  • *
  • Mensagens: 12
    • Ver perfil
Re: LAMP Acesso local e Externo
« Resposta #10 Online: 27 de Janeiro de 2015, 15:06 »
Você conectou, então o problema tá no script. Versões diferentes do php? Bibliotecas instaladas?

Esse é um script que eu fiz só pra testar a conexão com banco, segue o erro.

[pid 3939] [client 177.41.12.235:21453] PHP Warning:  mysql_connect(): Can't connect to MySQL server on 'mysql.megacall.com.br' (111) in /var/www/hiscred/higeteste.php on line 2[Tue Jan 27 11:18:08.329405 2015] [:error] [pid 3939] [client 177.41.12.235:21453] PHP Warning:  mysql_connect(): Can't connect to MySQL server on 'mysql.megacall.com.br' (111) in /var/www/hiscred/higeteste.php on line 2

Segue o código que da o erro acima.

<?php
$link = mysql_connect('www.xxxx.com.br', 'user', 'senha');
if (!$link) {
    die('Not connected : ' . mysql_error());
}

// make foo the current db
$db_selected = mysql_select_db('megacall01', $link);
if (!$db_selected) {
    die ('Can\'t use megacall01 : ' . mysql_error());
}
?>



« Última modificação: 28 de Janeiro de 2015, 13:41 por Anguz »

Offline zekkerj

  • Usuário Ubuntu
  • *
  • Mensagens: 19.735
  • Gratidão gera gratidão, lamúria atrai lamúria...
    • Ver perfil
    • Blog do Zekke
Re: LAMP Acesso local e Externo
« Resposta #11 Online: 27 de Janeiro de 2015, 15:18 »
Tente conectar via telnet ao servidor na linha de comandos, pra saber se não há alguma coisa impedindo a conectividade.

telnet mysql.megacall.com.br 3306
Pesquise antes de perguntar, sua dúvida pode já ter sido respondida.
Não respondo dúvidas por MP, coloque sua dúvida no fórum onde ela pode ser pesquisada pelos seus colegas!
Não venha ao fórum apenas para perguntar. Se você sabe a resposta de um problema, porque não ajudar seu colega? ;D

Offline Anguz

  • Usuário Ubuntu
  • *
  • Mensagens: 12
    • Ver perfil
Re: LAMP Acesso local e Externo
« Resposta #12 Online: 27 de Janeiro de 2015, 15:33 »
Tente conectar via telnet ao servidor na linha de comandos, pra saber se não há alguma coisa impedindo a conectividade.

telnet mysql.megacall.com.br 3306

Retorna:

telnet mysql.megacall.com.br 3306
Trying 177.12.161.24...
Connected to mysql.megacall.com.br.
Escape character is '^]'.
N
5.5.40-logZ▒▒LXSv|*Z▒r*xAzdfUS"MAmysql_native_passwordConnection closed by foreign host.

Offline irtigor

  • Equipe Ubuntu
  • Usuário Ubuntu
  • *****
  • Mensagens: 4.344
  • Delete, delete, delete!
    • Ver perfil
Re: LAMP Acesso local e Externo
« Resposta #13 Online: 27 de Janeiro de 2015, 16:25 »
Fora a porta que você não especificou, tem mais algum script rodando com os mesmos parâmetros desse mysql_connect? Se tiver coloque new_link=True.

Nota: prefira o MySQLi ou PDO_MySQL http://php.net/manual/en/function.mysql-connect.php

Offline JuarezFranco

  • Usuário Ubuntu
  • *
  • Mensagens: 186
  • Seja livre, use ... o que vc quiser :-)
    • Ver perfil
Re: LAMP Acesso local e Externo
« Resposta #14 Online: 27 de Janeiro de 2015, 18:16 »
Eu aconselho a fazer comunicação com a classe PDO.

Código: [Selecionar]
//Constantes para conexão com Servidor
define("PORT","3308");//3306 a padrao
define("DB","database"); //nome do banco de dados
define("END","endereco");//não aconselho  a vc publicar seu endereco para acesso externo do mysql como vc publicou. fica a dica.
define("USER","root");//usuario com permissao para acesso externo
define("PASS","senha");//senha


/*Cria conexão*/
function getConexao(){
$conn = new PDO( 'mysql:host='.END.';port='.PORT.';dbname='.DB.';charset=utf8',USER,PASS);
$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);

return $conn;
}

aqui segue um link com um bom tutorial

http://www.devmedia.com.br/como-conectar-mysql-com-php-via-pdo/30317

Eu faço assim.
"Riem de mim por eu ser diferente, e eu rio de vocês por serem todos iguais." - Bob Marley