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

MySQL बेसिक डेटाबेस एडमिनिस्ट्रेशन कमांड - भाग I

डेटाबेस इलेक्ट्रॉनिक रूप से संग्रहीत डेटा का एक संरचित सेट है। डेटाबेस की अवधारणा हमारे पूर्वजों को तब भी पता थी जब कंप्यूटर नहीं थे, हालांकि ऐसे डेटाबेस को बनाना और बनाए रखना बहुत कठिन काम था। मैन्युअल डेटाबेस में 100 . का मान लें पेज, अगर आपको उन सभी कर्मचारियों की तलाश करनी है जिनका वेतन 10k . से कम था , ज़रा सोचिए कि तब कितना मुश्किल होता।

आज की दुनिया में आप डेटाबेस . से बच नहीं सकते . अभी दुनिया भर में लाखों डेटाबेस काम कर रहे हैं और हर तरह के डेटा को स्टोर और लाने के लिए काम कर रहे हैं, चाहे वह रणनीतिक डेटा, कर्मचारी रिकॉर्ड या वेब तकनीक हो।

डेटाबेस को अक्सर बैक-एंड प्रक्रिया कहा जाता है, क्योंकि यह न तो अंतिम उपयोगकर्ता को दिखाई देता है और न ही अंतिम उपयोगकर्ता डेटाबेस के साथ सीधे इंटरैक्ट करता है। वे फ्रंट-एंड प्रक्रिया पर काम करते हैं, जैसे PHP , वीबी , एएसपी.नेट , आदि और फ्रंट एंड को बैक-एंड में डेटाबेस से निपटने के लिए कहें।

कई डेटाबेस सर्वर और क्लाइंट उपलब्ध हैं जैसे Oracle , MySQL , MySQLi , MariaDB, MongoDB आदि। इन सभी का सिंटैक्स कमोबेश एक जैसा है। किसी एक में महारत हासिल करने का मतलब है कि उनमें से अधिकांश पर नियंत्रण हासिल करना और डेटाबेस के प्रश्नों को सीखना बहुत आसान और मजेदार है।

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

वैसे एक डेटाबेस क्वेरी कोड का एक साधारण टुकड़ा है जो आवश्यकतानुसार कस्टम और परिष्कृत परिणाम प्राप्त करने के लिए डेटाबेस को भेजा जाता है।

MySQL डेटाबेस स्थापित करें

यम . का प्रयोग करें ” या “उपयुक्त पैकेज प्रबंधक MySQL स्थापित करने के लिए डेटाबेस।

# yum install mysql mysql-client mysql-server  (on Yum based Systems)

# apt-get install mysql mysql-client mysql-server (on Apt based Systems)
MySQL प्रारंभ करें

प्रारंभ करें MySQL डेटाबेस सेवा के रूप में:

# service mysqld start
or
# service mysql start

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

# mysql -u root -p

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

Welcome to the MySQL monitor.  Commands end with ; or \g.

Your MySQL connection id is 195 

Server version: 5.5.31-0+wheezy1 (Debian) 

Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved. 

Oracle is a registered trademark of Oracle Corporation and/or its affiliates. 
Other names may be trademarks of their respective owners. 

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql>

अब इस प्रॉम्प्ट पर पूछताछ करना बहुत शिक्षाप्रद और मजेदार है।

एक डेटाबेस टेकमिंट बनाएं
mysql> create database tecmint ;
Query OK, 1 row affected (0.02 sec) 

mysql>

नोट :यह रिपोर्ट करता है कि क्वेरी सही थी, इसका मतलब है कि डेटाबेस बनाया गया है। आप अपने नए बनाए गए डेटाबेस को इस रूप में सत्यापित कर सकते हैं।

mysql> show databases; 
+--------------------+
| Database           | 
+--------------------+ 
| information_schema | 
| mysql              | 
| performance_schema | 
| tecmint            | 
| test               | 
+--------------------+ 
9 rows in set (0.00 sec) 
mysql>

नोट :उपरोक्त आउटपुट में अपने डेटाबेस पर ध्यान दें।

डेटाबेस चुनें

अब आपको इस पर काम करने के लिए डेटाबेस का चयन करना होगा।

mysql> use tecmint;
Database changed
mysql>
MySQL में टेबल बनाएं

यहां हम "minttec . नाम की एक तालिका तैयार करेंगे ” तीन क्षेत्रों के साथ:

mysql> CREATE TABLE minttec (
    -> id Int(3), 
    -> first_name Varchar (15), 
    -> email Varchar(20) 
    -> ); 
Query OK, 0 rows affected (0.08 sec) 
mysql>

नोट :उपरोक्त क्वेरी ठीक says कहती है जिसका अर्थ है कि तालिका बिना किसी त्रुटि के बनाई गई थी। तालिका को सत्यापित करने के लिए नीचे दी गई क्वेरी चलाएँ।

mysql> show tables; 
+-------------------+ 
| Tables_in_tecmint | 
+-------------------+ 
| minttec           | 
+-------------------+ 

1 row in set (0.00 sec) 

mysql>

अब तक चीजें ठीक चल रही हैं। हां! आप "minttec . तालिका में अपने द्वारा बनाए गए कॉलम देख सकते हैं "के रूप में:

mysql> show columns from minttec; 

+------------+-------------+------+-----+---------+-------+ 
| Field      | Type        | Null | Key | Default | Extra | 
+------------+-------------+------+-----+---------+-------+ 
| id         | int(3)      | YES  |     | NULL    |       | 
| first_name | varchar(15) | YES  |     | NULL    |       | 
| email      | varchar(20) | YES  |     | NULL    |       | 
+------------+-------------+------+-----+---------+-------+ 
3 rows in set (0.00 sec)

mysql>

यह किसी जादू से कम नहीं था। वैसे भी मैं आपको घोषणा के प्रकार और उनके अर्थ के बारे में बताऊंगा।

  1. इंट पूर्णांक है
  2. वर्चर चर लंबाई के रूप में परिभाषित किया गया है। प्रकार के बाद का मान उस क्षेत्र की लंबाई है जिस तक वह डेटा संग्रहीत कर सकता है।

ठीक है अब हमें 'last_name . कहते हुए एक कॉलम जोड़ने की जरूरत है ' कॉलम के बाद 'first_name '।

mysql> ALTER TABLE minttec ADD last_name varchar (20) AFTER first_name; 
Query OK, 0 rows affected (0.16 sec)
Records: 0  Duplicates: 0  Warnings: 0

अब, इसे अपनी तालिका में सत्यापित करें।

mysql> show columns from minttec; 

+------------+-------------+------+-----+---------+-------+ 
| Field      | Type        | Null | Key | Default | Extra | 
+------------+-------------+------+-----+---------+-------+ 
| id         | int(3)      | YES  |     | NULL    |       | 
| first_name | varchar(15) | YES  |     | NULL    |       | 
| last_name  | varchar(20) | YES  |     | NULL    |       | 
| email      | varchar(20) | YES  |     | NULL    |       | 
+------------+-------------+------+-----+---------+-------+ 

4 rows in set (0.00 sec) 

mysql>
MySQL में कॉलम जोड़ें

अब हम दायीं ओर एक कॉलम जोड़ेंगे जैसे 'देश ' ईमेल . के दाईं ओर ।

mysql> ALTER TABLE minttec ADD country varchar (15) AFTER email; 
Query OK, 0 rows affected (0.16 sec) 
Records: 0  Duplicates: 0  Warnings: 0 

mysql>

उपरोक्त कॉलम प्रविष्टि क्वेरी सत्यापित करें।

mysql> show columns from minttec; 

+------------+-------------+------+-----+---------+-------+ 
| Field      | Type        | Null | Key | Default | Extra | 
+------------+-------------+------+-----+---------+-------+
| id         | int(3)      | YES  |     | NULL    |       | 
| first_name | varchar(15) | YES  |     | NULL    |       | 
| last_name  | varchar(20) | YES  |     | NULL    |       | 
| email      | varchar(20) | YES  |     | NULL    |       | 
| country    | varchar(15) | YES  |     | NULL    |       | 
+------------+-------------+------+-----+---------+-------+
5 rows in set (0.00 sec) 

mysql>
फ़ील्ड में मान डालें

फ़ील्ड में मान डालने के बारे में क्या?

mysql> INSERT INTO minttec VALUES ('1' , 'Ravi' , 'Saive' , '[email protected]' , 'India' );
Query OK, 1 row affected (0.02 sec) 

mysql>

1 . से अधिक डालने के बारे में कैसा रहेगा उपरोक्त तालिका में एक बार में मूल्य।

mysql> INSERT INTO minttec VALUES ('2' , 'Narad' , 'Shrestha' , '[email protected]' , 'India' ), ('3' , 'user' , 'singh' , '[email protected]' , 'Aus' ), ('4' , 'tecmint' , '[dot]com' , '[email protected]' , 'India' );
Query OK, 3 rows affected (0.05 sec) 
Records: 3  Duplicates: 0  Warnings: 0

उपरोक्त प्रविष्टि को सत्यापित करें।

mysql> select * from minttec; 
+------+------------+-----------+-------------------+---------+ 
| id   | first_name | last_name | email             | country | 
+------+------------+-----------+-------------------+---------+ 
|    1 | Ravi	    | Saive     | [email protected] | India   | 
|    2 | Narad      | Shrestha  | [email protected]     | India   | 
|    3 | user       | singh     | [email protected]      | Aus     | 
|    4 | tecmint    | [dot]com  | [email protected] | India   | 
+------+------------+-----------+-------------------+---------+ 

4 rows in set (0.00 sec)

mysql>
फ़ील्ड में मान हटाएं

मान लें कि उपरोक्त आउटपुट में तीसरी प्रविष्टि अमान्य है और हमें तीसरी प्रविष्टि को हटाना होगा।

mysql> DELETE FROM minttec WHERE id = 3;

Query OK, 1 row affected (0.02 sec)

उपरोक्त कार्रवाई सत्यापित करें।

mysql> select * from minttec;

+------+------------+-----------+-------------------+---------+ 
| id   | first_name | last_name | email             | country | 
+------+------------+-----------+-------------------+---------+
|    1 | Ravi       | Saive     | [email protected] | India   | 
|    2 | Narad      | Shrestha  | [email protected]     | India   | 
|    4 | tecmint    | [dot]com  | [email protected] | India   | 
+------+------------+-----------+-------------------+---------+
3 rows in set (0.00 sec)
फ़ील्ड में मान अपडेट करें

आईडी (=4) को संपादित करने की आवश्यकता है।

mysql> UPDATE minttec SET id = 3 WHERE first_name = 'tecmint'; 
Query OK, 1 row affected (0.02 sec)
Rows matched: 1  Changed: 1  Warnings: 0

mysql>

उपरोक्त क्वेरी सत्यापित करें।

mysql> UPDATE minttec SET id = 3 WHERE first_name = 'tecmint'; 
Query OK, 1 row affected (0.02 sec) 
Rows matched: 1  Changed: 1  Warnings: 0

mysql>

नोट :उपरोक्त क्वेरी, जैसा कि निष्पादित किया गया है, एक अच्छा विचार नहीं है। यह आईडी को '4 . में बदल देगा ' जहां भी पहला नाम होता है 'tecmint' . एक से अधिक कॉलम का उपयोग करना हमेशा एक अच्छा विचार है जहां क्लॉज न्यूनतम त्रुटि प्राप्त करता है, जैसे:

mysql> UPDATE minttec SET id = 6 WHERE first_name = 'tecmint'AND last_name = '[dot]com'; 
Query OK, 1 row affected (0.03 sec)
Rows matched: 1  Changed: 1  Warnings: 0

mysql>
MySQL में कॉलम हटाएं

आइए हम एक कॉलम को ड्रॉप (डिलीट) करें, जो हमें लगता है, कोई महत्व नहीं है, जैसे 'देश 'यहाँ।

mysql> ALTER TABLE minttec drop country; 
Query OK, 3 rows affected (0.15 sec)
Records: 3  Duplicates: 0  Warnings: 0

mysql>

तालिका सत्यापित करें।

mysql> select * from minttec; 

+------+------------+-----------+-------------------+ 
| id   | first_name | last_name | email             | 
+------+------------+-----------+-------------------+ 
|    1 | Ravi       | Saive     | [email protected] | 
|    2 | Narad      | Shrestha  | [email protected]     | 
|    6 | tecmint    | [dot]com  | [email protected] | 
+------+------------+-----------+-------------------+
3 rows in set (0.00 sec) 

mysql>
MySQL में टेबल का नाम बदलें

क्या आपको नहीं लगता कि हमारी तालिका का नाम “minttec . है "बहुत अधिक प्रासंगिक नहीं है। इसे tecmint_table . में कैसे बदलें ।

mysql> RENAME TABLE minttec TO tecmint_table; 
Query OK, 0 rows affected (0.03 sec)

mysql>
सभी तालिकाओं की सूची बनाएं

वर्तमान डेटाबेस के अंतर्गत सभी तालिकाएँ देखें।

mysql> show tables; 

+-------------------+ 
| Tables_in_tecmint | 
+-------------------+ 
| tecmint_table     | 
+-------------------+
1 row in set (0.00 sec) 

mysql>

तालिका का नाम बदल दिया गया है। अब उपरोक्त MySQL का बैकअप लें डेटाबेस, बिना किसी परिष्कृत उपकरण के कमांड की एक पंक्ति में। नीचे दिए गए कोड को अपने टर्मिनल पर चलाएँ न कि mysql प्रॉम्प्ट पर।

# mysqldump -u root -p tecmint > tecmint.sql

check the dumped file on your desktop which would have contents something like
-- MySQL dump 10.13  Distrib 5.5.31, for debian-linux-gnu (i686) --
-- Server version 5.5.31-0+wheezy1 -- 
Dump completed on 2013-09-02 12:55:37

MySQL डेटाबेस का बैकअप बनाए रखना हमेशा एक अच्छा विचार है। बैक अप को पुनर्स्थापित करना MySQL डेटा फिर से कोड की एक सरल पंक्ति है जिसे आपको अपने टर्मिनल प्रॉम्प्ट पर चलाने की आवश्यकता है, न कि अपने mysql प्रॉम्प्ट पर।

लेकिन, पहले प्रतीक्षा करें कि हम यह सत्यापित करने के लिए डेटाबेस को हटा देंगे कि हमारा पुनर्स्थापना सही है या नहीं।

डेटाबेस हटाएं
mysql> drop database tecmint; 
Query OK, 1 row affected (0.02 sec)

अपने डेटाबेस सर्वर पर डेटाबेस 'टेकमिंट' की जाँच करें।

mysql> show databases; 

+--------------------+ 
| Database           | 
+--------------------+ 
| information_schema | 
| my_database        | 
| mysql              | 
| performance_schema | 
| phpmyadmin         | 
| sisso              | 
| test               | 
+--------------------+

7 rows in set (0.00 sec) 
mysql>

महान! डेटाबेस खो गया है, लेकिन हमें चिंता करने की ज़रूरत नहीं है, हमारे पास बैकअप है।

डेटाबेस पुनर्स्थापित करें

खोए हुए डेटाबेस को पुनर्स्थापित करने के लिए, निम्न कमांड चलाएँ।

# mysql -u root -p tecmint < tecmint.sql
Enter password:
ERROR 1049 (42000): Unknown database 'tecmint'

ओओपीएस ! एक त्रुटि, अरे हमने डेटाबेस नहीं बनाया है tecmint . तो अपने mysql प्रॉम्प्ट पर जाएं और एक डेटाबेस बनाएं 'tecmint '।

mysql> create database tecmint; 
Query OK, 1 row affected (0.00 sec) 

mysql>

अब आपके शेल प्रॉम्प्ट (कड़ाई से) पर रिस्टोर कमांड चलाने का समय आ गया है।

# mysql -u root -p tecmint < tecmint.sql 
Enter password:

अपना डेटाबेस सत्यापित करें।

mysql> show databases; 

+--------------------+ 
| Database           | 
+--------------------+ 
| information_schema | 
| mysql              | 
| performance_schema | 
| tecmint            | 
| test               | 
+--------------------+ 
8 rows in set (0.00 sec)

डेटाबेस की सामग्री सत्यापित करें।

mysql> show tables from tecmint;

+-------------------+ 
| Tables_in_tecmint | 
+-------------------+ 
| tecmint_table     | 
+-------------------+ 
1 row in set (0.00 sec)

mysql>

अपनी पुनर्स्थापित तालिका की सामग्री सत्यापित करें।

mysql> select * from tecmint_table; 

+------+------------+-----------+-------------------+ 
| id   | first_name | last_name | email             | 
+------+------------+-----------+-------------------+ 
|    1 | Ravi       | Saive     | [email protected] | 
|    2 | Narad      | Shrestha  | [email protected]     | 
|    6 | tecmint    | [dot]com  | [email protected] | 
+------+------------+-----------+-------------------+

3 rows in set (0.00 sec)

यह निश्चित रूप से अंत नहीं है, हम प्राथमिक कुंजी . की अवधारणा को कवर करेंगे , विदेशी कुंजी , एकाधिक टेबल और चल रही क्वेरी सरल PHP . का उपयोग करना लेख के अगले भाग में स्क्रिप्ट।

हमें बताएं . करना न भूलें , लेख पढ़ते समय आपको कैसा लगा। आपकी टिप्पणियों की अत्यधिक सराहना की जाती है। स्वस्थ रहें और ट्यून किया गया , Tecmint . से जुड़े रहें ।


  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 में सबस्ट्रिंग () का उपयोग कैसे करें

  2. MySQL क्वेरी में टेक्स्ट को नंबर में बदलें

  3. चाइल्ड पंक्ति को जोड़ या अपडेट नहीं कर सकता:एक विदेशी कुंजी बाधा विफल हो जाती है

  4. MySQL में मौजूदा कॉलम में शून्य बाधा कैसे जोड़ें?

  5. MySQL में टेक्स्ट कॉलम में स्ट्रिंग खोजें