Mysql
 sql >> डेटाबेस >  >> RDS >> Mysql

लिनक्स में डिफ़ॉल्ट MySQL/MariaDB पोर्ट कैसे बदलें

इस गाइड में हम सीखेंगे कि MySQL/MariaDB . के डिफ़ॉल्ट पोर्ट को कैसे बदला जाए डेटाबेस CentOS 7 . में बंधता है और डेबियन आधारित लिनक्स वितरण। डिफ़ॉल्ट पोर्ट जो MySQL डेटाबेस सर्वर Linux और Unix के अंतर्गत चल रहा है 3306/TCP . है ।

डिफ़ॉल्ट MySQL/MariaDB . को बदलने के लिए लिनक्स में डेटाबेस पोर्ट, नीचे दिए गए आदेश को जारी करके संपादन के लिए MySQL सर्वर कॉन्फ़िगरेशन फ़ाइल खोलें।

# vi /etc/my.cnf.d/server.cnf                   [On CentOS/RHEL]
# vi /etc/mysql/mariadb.conf.d/50-server.cnf    [On Debian/Ubuntu] 

लाइन स्टेट की खोज [mysqld] . से शुरू होती है और निम्न पोर्ट निर्देश को [mysqld] . के अंतर्गत रखें बयान, जैसा कि नीचे फ़ाइल अंशों में दिखाया गया है। पोर्ट वेरिएबल को तदनुसार बदलें।

[mysqld] 
port = 12345

आपके द्वारा नया MySQL/MariaDB जोड़ने के बाद कॉन्फ़िगरेशन फ़ाइल को पोर्ट करें, सहेजें और बंद करें और CentOS 7 . के अंतर्गत निम्न पैकेज स्थापित करें आवश्यक SELinux . को लागू करने के लिए डेटाबेस को नए पोर्ट पर बाइंड करने की अनुमति देने के नियम।

# yum install policycoreutils-python

इसके बाद, नीचे SELinux जोड़ें नए पोर्ट पर MySQL सॉकेट को बाँधने का नियम और निम्नलिखित कमांड जारी करके परिवर्तन लागू करने के लिए डेटाबेस डेमॉन को पुनरारंभ करें। फिर से, अपने पोर्ट नंबर से मेल खाने के लिए MySQL पोर्ट वेरिएबल को बदलें।

--------------- On CentOS/RHEL --------------- 
# semanage port -a -t mysqld_port_t -p tcp 12345
# systemctl restart mariadb

--------------- On Debian/Ubuntu ---------------
# systemctl restart mysql      [On Debian/Ubuntu]  

यह सत्यापित करने के लिए कि MySQL/MariaDB . के लिए पोर्ट कॉन्फ़िगरेशन है या नहीं डेटाबेस सर्वर को सफलतापूर्वक लागू कर दिया गया है, नेटस्टैट जारी करें या ss कमांड और नए MySQL पोर्ट को आसानी से पहचानने के लिए परिणामों को grep कमांड के माध्यम से फ़िल्टर करें।

# ss -tlpn | grep mysql
# netstat -tlpn | grep mysql

आप रूट खाते के साथ MySQL डेटाबेस में लॉग इन करके नया MySQL पोर्ट भी प्रदर्शित कर सकते हैं और नीचे दिए गए आदेश को जारी कर सकते हैं। हालाँकि, ध्यान रखें कि लोकलहोस्ट पर MySQL से सभी कनेक्शन MySQL यूनिक्स डोमेन सॉकेट के माध्यम से किए जाते हैं, टीसीपी सॉकेट के माध्यम से नहीं। लेकिन -P का उपयोग करके MySQL डेटाबेस से कमांड लाइन रिमोट कनेक्शन के मामले में टीसीपी पोर्ट नंबर को स्पष्ट रूप से निर्दिष्ट किया जाना चाहिए। झंडा।

# mysql -h localhost -u root -p -P 12345
MariaDB [(none)]> show variables like 'port';

MySQL डेटाबेस से दूरस्थ कनेक्शन के मामले में, रूट उपयोगकर्ता को स्पष्ट रूप से कॉन्फ़िगर किया जाना चाहिए ताकि आने वाले कनेक्शन सभी नेटवर्क या सिर्फ एक आईपी पते के रूप में MySQL कंसोल में नीचे दिए गए आदेश को जारी कर सकें:

# mysql -u root -p
MariaDB [(none)]> grant all privileges on *.* to 'root'@'192.168.1.159' identified by 'strongpass';
MariaDB [(none)]> flush privileges;
MariaDB [(none)]> exit

नीचे दिए गए आदेश को जारी करके नए पोर्ट पर कमांड लाइन क्लाइंट के माध्यम से MySQL सर्वर में दूरस्थ रूप से लॉग इन करें।

# mysql -h 192.168.1.159 -P 12345 -u root -p  

अंत में, एक बार आपने MySQL/MariaDB . को बदल दिया है डेटाबेस सर्वर पोर्ट, आपको नए टीसीपी पोर्ट में आने वाले कनेक्शन की अनुमति देने के लिए अपने वितरण फ़ायरवॉल नियमों को अपडेट करने की आवश्यकता है ताकि दूरस्थ क्लाइंट सफलतापूर्वक डेटाबेस से जुड़ सकें।


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. डेटाबेस MySQL और Python के साथ स्वचालित रूप से अपडेट नहीं होता है

  2. MySQL ग्रुप बाय और अन्य कॉलम का कुल मूल्य

  3. सभी मेजबानों से MySQL रूट एक्सेस

  4. MySQL फायर ट्रिगर इन्सर्ट और अपडेट दोनों के लिए

  5. MySQL संग्रहीत कार्यविधियाँ