sql >> Databáze >  >> RDS >> Mysql

Vzdálená připojení Mysql Ubuntu

Chcete-li vystavit MySQL čemukoli jinému než localhost, budete muset mít následující řádek

Pro mysql verze 5.6 a nižší

bez komentáře v /etc/mysql/my.cnf a přidělené IP adrese vašeho počítače, nikoli zpětné smyčce

Pro mysql verze 5.7 a vyšší

bez komentáře v /etc/mysql/mysql.conf.d/mysqld.cnf a přidělené IP adrese vašeho počítače, nikoli zpětné smyčce

#Replace xxx with your IP Address 
bind-address        = xxx.xxx.xxx.xxx

Nebo přidejte bind-address = 0.0.0.0 pokud nechcete zadat IP

Poté zastavte a restartujte MySQL s novým záznamem my.cnf. Po spuštění přejděte do terminálu a zadejte následující příkaz.

lsof -i -P | grep :3306

To by se mělo vrátit asi takto s vaší skutečnou IP v xxx

mysqld  1046  mysql  10u  IPv4  5203  0t0  TCP  xxx.xxx.xxx.xxx:3306 (LISTEN)

Pokud se výše uvedený příkaz vrátí správně, budete moci přijímat vzdálené uživatele. Aby se však vzdálený uživatel připojil se správnými oprávněními, musíte mít tohoto uživatele vytvořeného v localhost i '%' jako v.

CREATE USER 'myuser'@'localhost' IDENTIFIED BY 'mypass';
CREATE USER 'myuser'@'%' IDENTIFIED BY 'mypass';

pak,

GRANT ALL ON *.* TO 'myuser'@'localhost';
GRANT ALL ON *.* TO 'myuser'@'%';

a nakonec

FLUSH PRIVILEGES; 
EXIT;

Pokud nemáte vytvořeného stejného uživatele jako výše, při místním přihlášení můžete zdědit základní oprávnění localhost a mít problémy s přístupem. Pokud chcete omezit přístup, který má můj uživatel, budete si muset přečíst syntaxi příkazu GRANT ZDE Pokud se přes to všechno dostanete a stále máte problémy, odešlete další chybový výstup a příslušné řádky my.cnf.

POZNÁMKA:Pokud se lsof nevrátí nebo není nalezen, můžete jej nainstalovat ZDE na základě vaší distribuce Linuxu. Nepotřebujete lsof, aby věci fungovaly, ale je to velmi užitečné, když věci nefungují podle očekávání.

AKTUALIZACE:Pokud i po přidání/změně bind-address v my.cnf nefungovalo, pak jej jděte a změňte na místě, kde bylo původně deklarováno:

/etc/mysql/mariadb.conf.d/50-server.cnf


  1. Můžete rozdělit/rozložit pole v dotazu MySQL?

  2. Aktualizujte hodnotu primárního klíče pomocí entity framework

  3. Transponujte vybrané výsledky pomocí Oracle

  4. Jak zapsat příkaz IF ELSE v dotazu MySQL