मैं MySQL को दूरस्थ रूप से एक्सेस करना चाहता हूं:
GRANT ALL ON *.* TO thufir@'192.168.0.16' IDENTIFIED BY 'hfdks4329vjkl';
जब कार्यक्षेत्र कनेक्ट करने में विफल रहा, तो मैंने पिंग और टेलनेट के साथ एक नज़र डाली:
Brents-MacBook:~ thufir$
Brents-MacBook:~ thufir$ ping 192.168.0.21
PING 192.168.0.21 (192.168.0.21): 56 data bytes
64 bytes from 192.168.0.21: icmp_seq=0 ttl=64 time=0.274 ms
64 bytes from 192.168.0.21: icmp_seq=1 ttl=64 time=0.499 ms
^C
--- 192.168.0.21 ping statistics ---
2 packets transmitted, 2 packets received, 0.0% packet loss
round-trip min/avg/max/stddev = 0.274/0.387/0.499/0.113 ms
Brents-MacBook:~ thufir$
Brents-MacBook:~ thufir$ telnet 192.168.0.21
Trying 192.168.0.21...
^C
Brents-MacBook:~ thufir$
Brents-MacBook:~ thufir$ telnet 192.168.0.21 3306
Trying 192.168.0.21...
^C
Brents-MacBook:~ thufir$
मैं स्थापित कर रहा हूं coreutilsऔर सीखना होगा netstatकि मैक का उपयोग कैसे करना है , और lsof- जाहिर है यह अलग है।
arrakisसर्वर चल रहा है OpenSuSE; यह बंद बंदरगाहों है?
नोट: मैंने मैक पर MySQL स्थापित नहीं किया है, यह मुझे त्रुटियाँ देता है ...
-------------------------------------------------- ----------------------------अपडेट करें
MariaDB [mysql]>
MariaDB [mysql]> GRANT ALL ON *.* TO `thufir`@'%' IDENTIFIED BY 'password';
Query OK, 0 rows affected (0.00 sec)
MariaDB [mysql]>
MariaDB [mysql]> flush privileges;
Query OK, 0 rows affected (0.00 sec)
MariaDB [mysql]>
MariaDB [mysql]> select host, user, grant_priv from user;
+------------+--------+------------+
| host | user | grant_priv |
+------------+--------+------------+
| localhost | root | Y |
| linux-k7qk | root | Y |
| 127.0.0.1 | root | Y |
| ::1 | root | Y |
| localhost | | N |
| linux-k7qk | | N |
| % | cron | N |
| localhost | cron | N |
| localhost | custom | N |
| % | custom | N |
| % | slave | N |
| % | root | N |
| % | thufir | N |
+------------+--------+------------+
13 rows in set (0.00 sec)
MariaDB [mysql]>
GRANTकमांड आपके पास IP पते का उपयोग करता है, 192.168.0.16लेकिन आपके सभी pingऔर telnetपरीक्षण के लिए हैं 192.168.0.21। तो यह कौन सा आईपी पता है? जब आप MySQL में अनुदान सेट करते हैं, तो आप क्लाइंट आईपी पते के आधार पर ऐसा करते हैं ; सर्वर आईपी पता नहीं। "पोस्टस्क्रिप्ट" अनुभाग में मेरे पूर्ण उत्तर में अधिक विवरण , लेकिन शायद यह मुद्दा सरल / मूल जैसा कुछ है।
arrakisयह संभव हो सकता है कि मैक पर आउटपोइंग पोर्ट अवरुद्ध हो (लेकिन संभावित नहीं)। यह भी ध्यान दें कि अक्सर mysql127.0.0.1हमलों को रोकने के लिए बाध्य है , इसलिए आपको mysql सर्वर कॉन्फ़िगरेशन (bind-address) को संशोधित करना होगा ।