MySQL में यूजर अकाउंट और उनके अनुमत होस्ट (host) देखना
MySQL यूजर अकाउंट user@host फॉर्मेट में होते हैं। mysql.user सिस्टम टेबल से यूजर और उनके होस्ट की सूची प्राप्त करें।
सभी यूजर नाम देखें:
mysql> SELECT user FROM mysql.user;
+------------------+ | user | +------------------+ | Manish | | mysql.infoschema | | mysql.session | | mysql.sys | | root | | am | +------------------+ 6 rows in set (0.06 sec)
यूजर के साथ होस्ट देखें:
mysql> SELECT user, host FROM mysql.user;
+------------------+-----------+ | user | host | +------------------+-----------+ | Manish | % | | mysql.infoschema | % | | mysql.session | % | | mysql.sys | % | | root | % | | am | localhost | +------------------+-----------+ 6 rows in set (0.00 sec)
होस्ट मान समझाए:
| होस्ट मान | अर्थ |
|---|---|
localhost | केवल लोकल मशीन से कनेक्शन (सॉकेट/पाइप) |
127.0.0.1 | केवल लोकल मशीन से TCP/IP कनेक्शन |
% | किसी भी होस्ट से कनेक्शन (वाइल्डकार्ड) |
192.168.1.% | विशिष्ट सबनेट से कनेक्शन |
example.com | विशिष्ट होस्टनाम से कनेक्शन (DNS रिज़ॉल्यूशन आवश्यक) |
उपयोगी क्वेरी:
विशिष्ट यूजर के होस्ट देखें:
SELECT host FROM mysql.user WHERE user = 'root';
सभी यूजर और उनके होस्ट (पासवर्ड एक्सपायरी सहित):
SELECT user, host, password_expired, account_locked FROM mysql.user ORDER BY user, host;
केवल रिमोट एक्सेस वाले यूजर:
SELECT user, host FROM mysql.user WHERE host != 'localhost' AND host != '127.0.0.1';
सुरक्षा सर्वोत्तम अभ्यास:
- नियमित रूप से यूजर/होस्ट ऑडिट करें
- अनावश्यक
%होस्ट हटाएं rootके लिए केवलlocalhostरखें- मजबूत पासवर्ड और
password_expired = 'N'सुनिश्चित करें