<टेम्पलेट x-if=visible><टेम्पलेट x-if=$isMobile()> <टेम्पलेट x-if=!$isMobile()> <टेम्पलेट x-if=खुला>टेम्पलेट> टेम्पलेट>
MySQL एक लोकप्रिय डेटाबेस प्रबंधन प्रणाली है जिसका उपयोग वेब और सर्वर अनुप्रयोगों के लिए किया जाता है। यह मार्गदर्शिका बताएगी कि CentOS 6 चलाने वाले लाइनोड पर MySQL को कैसे स्थापित, कॉन्फ़िगर और प्रबंधित किया जाए।
नोट यह मार्गदर्शिका गैर-रूट उपयोक्ता के लिए लिखी गई है। जिन आदेशों के लिए उन्नत विशेषाधिकारों की आवश्यकता होती है, उनके आगेsudo
. लगा होता है . अगर आपsudo
. से परिचित नहीं हैं आदेश, आप हमारे उपयोगकर्ता और समूह मार्गदर्शिका देख सकते हैं।
शुरू करने से पहले
-
सुनिश्चित करें कि आपने गेटिंग स्टार्टिंग एंड सिक्योरिंग योर सर्वर गाइड्स का पालन किया है, और लिनोड का होस्टनाम सेट है।
अपना होस्टनाम चलाने की जाँच करने के लिए:
hostname hostname -f
पहली कमांड को आपका संक्षिप्त होस्टनाम दिखाना चाहिए, और दूसरे को आपका पूरी तरह से योग्य डोमेन नाम (FQDN) दिखाना चाहिए।
-
अपना सिस्टम अपडेट करें:
sudo yum update
MySQL स्थापित करें और प्रारंभ करें
-
MySQL इंस्टाल करें और बताएं कि किस रनलेवल पर शुरू करना है:
sudo yum install mysql-server sudo /sbin/chkconfig --levels 235 mysqld on
-
फिर MySQL सर्वर शुरू करने के लिए:
sudo service mysqld start
MySQL डिफ़ॉल्ट रूप से लोकलहोस्ट (127.0.0.1) से जुड़ जाएगा। SSH का उपयोग करके अपने डेटाबेस से कनेक्ट करने के बारे में जानकारी के लिए कृपया हमारी MySQL रिमोट एक्सेस गाइड देखें।
नोट सार्वजनिक आईपी पर MySQL तक अप्रतिबंधित पहुंच की अनुमति देने की सलाह नहीं दी जाती है, लेकिन आपbind-address
को संशोधित करके उस पते को बदल सकते हैं जिस पर वह सुनता है।/etc/my.cnf
में पैरामीटर . यदि आप MySQL को अपने सार्वजनिक IP से बाँधने का निर्णय लेते हैं, तो आपको फ़ायरवॉल नियम लागू करने चाहिए जो केवल विशिष्ट IP पतों से कनेक्शन की अनुमति देते हैं।
MySQL सर्वर को सख्त करें
-
mysql_secure_installation
चलाएं डिफ़ॉल्ट MySQL स्थापना में कई सुरक्षा चिंताओं को दूर करने के लिए स्क्रिप्ट।sudo mysql_secure_installation
आपको MySQL रूट पासवर्ड बदलने, अनाम उपयोगकर्ता खातों को हटाने, लोकलहोस्ट के बाहर रूट लॉगिन को अक्षम करने और परीक्षण डेटाबेस को हटाने का विकल्प दिया जाएगा। यह अनुशंसा की जाती है कि आप इन विकल्पों का उत्तर हां में दें। आप स्क्रिप्ट के बारे में MySQL संदर्भ मैनुअल में अधिक पढ़ सकते हैं।
MySQL का उपयोग करना
MySQL के साथ इंटरैक्ट करने के लिए मानक टूल mysql
है क्लाइंट जो mysql-server
. के साथ स्थापित होता है पैकेट। MySQL क्लाइंट का उपयोग टर्मिनल के माध्यम से किया जाता है।
रूट लॉगिन
-
MySQL में रूट यूजर के रूप में लॉग इन करने के लिए:
mysql -u root -p
-
संकेत मिलने पर, mysql_secure_installation स्क्रिप्ट चलाते समय आपके द्वारा असाइन किया गया रूट पासवर्ड दर्ज करें।
फिर आपको MySQL मॉनिटर डिस्प्ले के साथ प्रस्तुत किया जाएगा:
Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 1 Server version: 5.0.45 Source distribution Type 'help;' or '\h' for help. Type '\c' to clear the buffer. mysql>
-
MySQL प्रॉम्प्ट के लिए कमांड की सूची बनाने के लिए,
\h
enter दर्ज करें . फिर आप देखेंगे:List of all MySQL commands: Note that all text commands must be first on line and end with ';' ? (\?) Synonym for `help'. clear (\c) Clear command. connect (\r) Reconnect to the server. Optional arguments are db and host. delimiter (\d) Set statement delimiter. NOTE: Takes the rest of the line as new delimiter. edit (\e) Edit command with $EDITOR. ego (\G) Send command to mysql server, display result vertically. exit (\q) Exit mysql. Same as quit. go (\g) Send command to mysql server. help (\h) Display this help. nopager (\n) Disable pager, print to stdout. notee (\t) Don't write into outfile. pager (\P) Set PAGER [to_pager]. Print the query results via PAGER. print (\p) Print current command. prompt (\R) Change your mysql prompt. quit (\q) Quit mysql. rehash (\#) Rebuild completion hash. source (\.) Execute an SQL script file. Takes a file name as an argument. status (\s) Get status information from the server. system (\!) Execute a system shell command. tee (\T) Set outfile [to_outfile]. Append everything into given outfile. use (\u) Use another database. Takes database name as argument. charset (\C) Switch to another charset. Might be needed for processing binlog with multi-byte charsets. warnings (\W) Show warnings after every statement. nowarning (\w) Don't show warnings after every statement. For server side help, type 'help contents' mysql>
एक नया MySQL उपयोगकर्ता और डेटाबेस बनाएं
-
नीचे दिए गए उदाहरण में,
testdb
डेटाबेस का नाम है,testuser
उपयोगकर्ता है, औरpassword
उपयोगकर्ता का पासवर्ड है।create database testdb; create user 'testuser'@'localhost' identified by 'password'; grant all on testdb.* to 'testuser' identified by 'password';
आप जबकि . उपयोगकर्ता बनाकर इस प्रक्रिया को छोटा कर सकते हैं डेटाबेस अनुमतियाँ असाइन करना:
create database testdb; grant all on testdb.* to 'testuser' identified by 'password';
-
फिर MySQL से बाहर निकलें।
exit
नमूना तालिका बनाएं
-
testuser
. के रूप में वापस लॉग इन करें ।mysql -u testuser -p
-
customers
called नामक एक नमूना तालिका बनाएं . यहINT
. प्रकार के ग्राहक आईडी फ़ील्ड के साथ एक तालिका बनाता है पूर्णांक के लिए (नए रिकॉर्ड के लिए स्वत:वृद्धि, प्राथमिक कुंजी के रूप में उपयोग किया जाता है), साथ ही ग्राहक के नाम को संग्रहीत करने के लिए दो फ़ील्ड।use testdb; create table customers (customer_id INT NOT NULL AUTO_INCREMENT PRIMARY KEY, first_name TEXT, last_name TEXT);
-
फिर MySQL से बाहर निकलें।
exit
MySQL रूट पासवर्ड रीसेट करें
यदि आप अपना रूट MySQL पासवर्ड भूल जाते हैं, तो इसे फ्लश किया जा सकता है और फिर रीसेट किया जा सकता है।
-
वर्तमान MySQL सर्वर इंस्टेंस को रोकें, फिर पासवर्ड न मांगने के विकल्प के साथ इसे पुनरारंभ करें।
sudo /etc/init.d/mysqld stop sudo mysqld_safe --skip-grant-tables &
-
MySQL सर्वर से MySQL रूट खाते से फिर से कनेक्ट करें।
mysql -u root
-
रूट का पासवर्ड रीसेट करने के लिए निम्न कमांड का उपयोग करें।
password
बदलें एक मजबूत पासवर्ड के साथ।use mysql; update user SET PASSWORD=PASSWORD("password") WHERE USER='root'; flush privileges; exit
-
फिर MySQL को पुनरारंभ करें।
sudo service mysqld restart
अब आप mysql -u root -p
. का उपयोग करके फिर से लॉग इन कर पाएंगे ।
MySQL ट्यून करें
MySQL ट्यूनर एक पर्ल स्क्रिप्ट है जो MySQL के चल रहे इंस्टेंस से जुड़ती है और वर्कलोड के आधार पर कॉन्फ़िगरेशन अनुशंसाएं प्रदान करती है। आदर्श रूप से, MySQL इंस्टेंस को ट्यूनर चलाने से कम से कम 24 घंटे पहले काम करना चाहिए था। इंस्टेंस जितना लंबा चल रहा है, MySQL ट्यूनर उतनी ही बेहतर सलाह देगा।
-
MySQL ट्यूनर को अपने होम डायरेक्टरी में डाउनलोड करें।
wget https://raw.githubusercontent.com/major/MySQLTuner-perl/master/mysqltuner.pl
-
इसे चलाने के लिए:
perl ./mysqltuner.pl
आउटपुट रुचि के दो क्षेत्रों को दिखाएगा:सामान्य अनुशंसाएं और चर समायोजित करने के लिए।
MySQL ट्यूनर एक MySQL सर्वर को ऑप्टिमाइज़ करने के लिए एक उत्कृष्ट प्रारंभिक बिंदु है, लेकिन आपके लाइनोड पर MySQL का उपयोग करने वाले एप्लिकेशन के अनुरूप कॉन्फ़िगरेशन के लिए अतिरिक्त शोध करना समझदारी होगी।
अधिक जानकारी
आप इस विषय पर अतिरिक्त जानकारी के लिए निम्नलिखित संसाधनों से परामर्श करना चाह सकते हैं। हालांकि ये इस उम्मीद में प्रदान किए जाते हैं कि वे उपयोगी होंगे, कृपया ध्यान दें कि हम बाहरी रूप से होस्ट की गई सामग्री की सटीकता या समयबद्धता की पुष्टि नहीं कर सकते।
- MySQL 5.1 संदर्भ मैनुअल
- PHP MySQL मैनुअल
- DBD::mysql के लिए पर्ल DBI उदाहरण
- MySQLdb उपयोगकर्ता मार्गदर्शिका