Ola, gente.
Como faço para fazer uma consulta no banco de dados do MK-AUTH sem ser local, e sim externo, para fazer uma aplicação que coloque, ex:
try{
$conexao = new PDO ('mysql:host=IP DO MK-AUTH;dbname=NOME DO BANCO', 'root', 'vertrigo');
$conexao->query("SET NAMES utf8");
$conexao->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
}catch(PDOException $erro){
echo 'ERRO:' . $erro->getMessage();
}
Eu fiz um experimento so que da esse erro: "ERRO:SQLSTATE[HY000] [2002] Nenhuma conexão pode ser feita porque a maquina de destino as recusou ativamente."
Como faço isso?
Respostas
Boa tarde,
Voce tem que liberar o acesso dentro do servidor mysql, exemplo: se sua aplicação esta rodando em um servidor fora do mk-auth então voce vai :
1- Acessar o shell do mk-auth
2- rodar o comando para acessar o mysql por linha de comando "mysql -u root -p"
3- Liberar o acesso para o ip que deseja fazer a consulta "GRANT ALL ON *.* TO 'root'@'[ip da máquina]' IDENTIFIED BY '[senha]' WITH GRANT OPTION; "
4- depois rodara o comando para limpar os privilegios "FLUSH PRIVILEGES;"
5- rode sua aplicação na outra maquina para testar
Esse "ip da maquina" e "senha" são do mk-auth? Porque se for ainda esta dando o mesmo erro.
Ah um detalhe esse mk-auth é nas nuvens, tem algum problema?
rodrigo silveira magnus disse:
Tem que ativar o acesso externo ao MK-AUTH e criar o usuário correspondente.
Por padrão, o MySQL só aceita conexões locais.
Como eu faço isso?
Marco disse:
Configurando acesso remoto em servidores MySQL
Wesley Rodrigues disse:
Obrigado amigo irei testar se funcionar eu vou voltar aqui para agradecer de novo.
Bom, testei e funcionou obrigado, amigo
Marco disse:
altera bind-address = 127.0.0.1 em /etc/mysql/my.cnf e cuidado pois seu BD ficará disponível, isso é por sua conta e risco...
pedro
esse questao do acesso vc não consegue implementar no sistema via web para quem quiser trocar a senha no bd e depois comentar o arquivo my.cnf pra ficar acessivel sem dar problemas de acesso
tbm queria usar os dados do mkauth mais sem perder a segurança.
tenho pabx e uso o bd pra identificar as chamadas recebidas, por hora faço isso pois esta tudo local mais o dia que tiver necessidade de colocar ip publico sendo local ou em nuvens ai vai ficar vuneravel.
tem como eu coloar mais de undereço no bind -address ? preciso do acesso local 127.0.0.1 e do meu ip. somente isso.
Não.
O banco fica disponível somente para nenhum IP (conexão somente via socket), um IP ou todos os IPs da máquina.
tutasmenet disse: