Soru Uzak bağlantı kabul etmek için bir MySql sunucusu nasıl kurulur?


Ubuntu masaüstünde bir MySql sunucusu kuruyorum. MySql Query Browser'ı belirlerken Server Hostname gibi localhostancak makinenin IP'si ile değiştirdiğimde çalışmayı durdurur (MySql Query Browser aynı makinede çalışsa bile).

Şimdiye kadar yaptığım tek şey iptables'leri kaldırmak, ama onunla hiçbir ilgisi yok gibi görünüyor.

İşte hata mesajı

'192.168.0.2' ana bilgisayarına bağlanılamadı.

MySQL Hatası Nr. 2003

'192.168.0.2' 'MySQL sunucusuna bağlanılamıyor (111)

Bir ağ sorunu olup olmadığını görmek için 'Ping' düğmesine tıklayın.

Ping yine de


16
2017-12-06 16:47


Menşei




Cevaplar:


Mysqld'inizi 127.0.0.1'den farklı bir IP'ye bağlamanız gerekir.

My.cnf dosyanızı açın (genellikle /etc/mysql/my.cnf) ve yazan satırı değiştirin

bind = 127.0.0.1

Makinenizin dış dünyaya bağlanmak için kullandığı IP'ye. 0.0.0.0 tüm IP adreslerine bağlanır. Bu değişiklikten sonra mysqld'inizi yeniden başlatmayı unutmayın.


22
2017-12-06 16:53



şimdi farklı bir hatayı aldım: '192.168.0.2' ana bilgisayarına bağlanılamadı. MySQL Hatası Nr. 'My what is vubuntu.local' bu MySQL sunucusuna bağlanmasına izin verilmiyor - Jader Dias
user @ localhost ve user @ <hostname> farklı. Uzak ana bilgisayarlardan bağlanabilmek için kullanıcıyı eklemelisiniz. - James
Bu sorun değil. Bunu yaptım ve hala hatayı alıyorum. - Cerin
Bu olmalı bind-address? - Thomas Weller


Yarım bir cevaba ek olarak, aşağıdaki mysql komutunu çalıştırmam gerekti:

GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP
ON databasename.*
TO 'username'@'clientipaddress'
IDENTIFIED BY 'password'

Öğrendim gibi

http://forums.mysql.com/read.php?86,23619,41248#msg-41248


5
2017-12-06 17:06





Burada daha fazla potansiyel problem açıklandı:

http://www.cyberciti.biz/tips/how-do-i-enable-remote-access-to-mysql-database-server.html http://dev.mysql.com/doc/refman/5.1/en/access-denied.html

Tüm veritabanlarına tüm ayrıcalıkları vermek istiyorsanız, deneyin.

grant all on *.* to 'joe'@'%';

Ancak, bunu yapmadan önce, IP adresinize "Host" ayarlı "mysql" veritabanında bir kullanıcı olduğundan emin olun - benim durumumda, evde IP adresim. Yani "joe" kullanıcısı, arayabileceği her IP için birden fazla rekor olabilir. Orada neyin var olduğunu görmek için:

use mysql;
select Host, User, Password from user where user='joe';`

Benim durumumda, kullanıcım şimdi doğru IP'ye sahipti ama şifre de eksikti. Şifreyi (hash veya bir şey) kesip yapıştırdım ve bu benim uzaktan bağlantı sorunumu çözdü:

update user set Password='5493845039485' where user='joe';

Bir şey daha, my.cnf'de "port = 3306" ya da kullanmayı planladığınız portu ayarlamak isteyebilirsiniz.


2
2018-03-21 23:40