Mysql
 sql >> Datenbank >  >> RDS >> Mysql

MySQL Basic Datenbankverwaltungsbefehle – Teil I

Datenbank ist ein strukturierter Datensatz, der elektronisch gespeichert wird. Das Konzept der Datenbank war unseren Vorfahren schon bekannt, als es noch keine Computer gab, aber die Erstellung und Pflege einer solchen Datenbank war eine sehr mühsame Arbeit. Sagen Sie in einer manuellen Datenbank 100 Seiten, wenn Sie nach allen Mitarbeitern suchen müssen, deren Gehalt weniger als 10.000 betrug , denken Sie nur, wie schwierig es dann gewesen wäre.

In der heutigen Welt kann man Datenbank einfach nicht entkommen . Derzeit arbeiten Millionen von Datenbanken auf der ganzen Welt daran, Daten aller Art zu speichern und abzurufen, seien es strategische Daten, Mitarbeiterdatensätze oder Webtechnologien.

Die Datenbank wird oft als Back-End-Prozess bezeichnet, da sie weder für den Endbenutzer noch für den Endbenutzer sichtbar ist interagiert direkt mit der Datenbank. Sie arbeiten am Front-End-Prozess, nämlich PHP , VB , ASP.NET usw. und bitten Sie das Frontend, sich mit der Datenbank im Backend zu befassen.

Es sind mehrere Datenbankserver und -clients wie Oracle verfügbar , MySQL , MySQLi , MariaDB, MongoDB usw. Die Syntax aller ist mehr oder weniger gleich. Eine zu beherrschen bedeutet, die meisten von ihnen zu beherrschen, und das Erlernen der Abfragen einer Datenbank ist sehr einfach und macht Spaß.

Beginnen wir mit einfachen Abfragen in der Datenbank. Wir werden MySQL verwenden das mit den meisten Linux-Paketen geliefert wird Distributionen standardmäßig installiert haben, können Sie es manuell aus dem Repository installieren, wenn es in Ihrem Fall nicht standardmäßig installiert ist.

Nun, eine Datenbankabfrage ist ein einfacher Code, der an die Datenbank gesendet wird, um nach Bedarf ein benutzerdefiniertes und verfeinertes Ergebnis zu erhalten.

MySQL-Datenbank installieren

Verwenden Sie „lecker “ oder „passend ” Paketmanager, um MySQL zu installieren Datenbank.

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

# apt-get install mysql mysql-client mysql-server (on Apt based Systems)
Starten Sie MySQL

Starten Sie MySQL Datenbankdienst als:

# service mysqld start
or
# service mysql start

Nun, die Installation eines MySQL Datenbank führt Sie zur Konfiguration, wo Sie aufgefordert werden, admin einzurichten Passwort usw. Gehen Sie nach Abschluss der Installation und dem Starten des Servers zu Ihrem MySQL Eingabeaufforderung.

# mysql -u root -p

Ersetzen Sie root mit Ihrem konfigurierten Benutzernamen und geben Sie Passwort ein Wenn Sie dazu aufgefordert werden und die Anmeldeinformationen korrekt sind, befinden Sie sich in Ihrem MySQL Aufforderung im Handumdrehen.

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>

Das Ausführen von Abfragen an dieser Eingabeaufforderung ist jetzt sehr lehrreich und macht Spaß.

Erstellen Sie eine Datenbank tecmint
mysql> create database tecmint ;
Query OK, 1 row affected (0.02 sec) 

mysql>

Hinweis :Es meldet, dass die Abfrage korrekt war, dh die Datenbank wurde erstellt. Sie können Ihre neu erstellte Datenbank verifizieren als.

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

Hinweis :Beachten Sie Ihre Datenbank in der obigen Ausgabe.

Datenbank auswählen

Jetzt müssen Sie die Datenbank auswählen, um damit zu arbeiten.

mysql> use tecmint;
Database changed
mysql>
Tabellen in MySQL erstellen

Hier erstellen wir eine Tabelle mit der Aufschrift „minttec ” mit drei Feldern als:

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

Hinweis :Die obige Abfrage sagt OK was bedeutet, dass die Tabelle ohne Fehler erstellt wurde. Um die Tabelle zu überprüfen, führen Sie die folgende Abfrage aus.

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

1 row in set (0.00 sec) 

mysql>

Die Dinge laufen bis jetzt gut. Jep! Die erstellten Spalten können Sie in der Tabelle „minttec“ einsehen “ als:

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>

Es war nichts weniger als ein Zauber. Auf jeden Fall werde ich Sie über die Arten der Deklaration und ihre Bedeutung informieren.

  1. Int ist ganze Zahl
  2. Varchar ist ein Zeichen mit variabler Länge wie definiert. Der Wert hinter Type ist die Feldlänge, bis zu der Daten gespeichert werden können.

OK, jetzt müssen wir eine Spalte mit dem Inhalt „last_name“ hinzufügen ' nach Spalte '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

Überprüfen Sie es jetzt in Ihrer Tabelle.

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>
Spalte in MySQL hinzufügen

Jetzt fügen wir rechts eine Spalte hinzu, sagen wir eine Spalte "Land". ‘ rechts neben E-Mail .

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>

Überprüfen Sie die obige Spalteneinfügungsabfrage.

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>
Werte in Feld einfügen

Was ist mit dem Einfügen von Werten in das Feld?

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

mysql>

Wie wäre es, wenn Sie mehr als 1 einfügen Wert in der obigen Tabelle.

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

Überprüfen Sie die obige Einfügung.

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>
Werte im Feld löschen

Angenommen, der dritte Eintrag in der obigen Ausgabe ist ungültig und wir müssen den dritten Eintrag löschen.

mysql> DELETE FROM minttec WHERE id = 3;

Query OK, 1 row affected (0.02 sec)

Überprüfen Sie den obigen Vorgang.

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)
Werte im Feld aktualisieren

Die ID (=4) muss bearbeitet werden.

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>

Bestätigen Sie die obige Abfrage.

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>

Hinweis :Die obige Abfrage, wie durchgeführt, ist keine gute Idee. Die ID wird in „4“ geändert ‘, wo immer der Vorname ‘tecmint’ ist . Es ist immer eine gute Idee, mehr als eine Spalte mit where-Klauseln zu verwenden, um minimale Fehler zu erhalten, wie:

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>
Spalte in MySQL löschen

Lassen Sie uns eine Spalte löschen (löschen), die unserer Meinung nach nicht wichtig ist, sagen Sie "Land". ‘hier.

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

mysql>

Überprüfen Sie die Tabelle.

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>
Tabelle in MySQL umbenennen

Denkst du nicht, dass unser Tischname „minttec “ ist nicht sehr relevant. Wie wäre es mit einer Änderung in tecmint_table .

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

mysql>
Alle Tabellen auflisten

Alle Tabellen unter der aktuellen Datenbank anzeigen.

mysql> show tables; 

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

mysql>

Die Tabelle wurde umbenannt. Erstellen Sie nun ein Backup des obigen MySQL Datenbank, in einer einzigen Befehlszeile ohne kompliziertes Tool. Führen Sie den folgenden Code auf Ihrem Terminal aus und nicht auf der mysql-Eingabeaufforderung.

# 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

Es ist immer eine gute Idee, ein Backup von MySQL-Datenbanken zu führen. Wiederherstellen des gesicherten MySQL Daten sind wiederum eine einfache Codezeile, die Sie an Ihrem Terminal-Prompt und nicht an Ihrem MySQL-Prompt ausführen müssen.

Aber warten Sie zuerst, wir werden die Datenbank löschen, um zu überprüfen, ob unsere Wiederherstellung perfekt ist.

Datenbank löschen
mysql> drop database tecmint; 
Query OK, 1 row affected (0.02 sec)

Suchen Sie auf Ihrem Datenbankserver nach der Datenbank „tecmint“.

mysql> show databases; 

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

7 rows in set (0.00 sec) 
mysql>

Toll! Die Datenbank ist verloren, aber wir brauchen uns keine Sorgen zu machen, wir haben die Sicherung.

Eine Datenbank wiederherstellen

Führen Sie den folgenden Befehl aus, um die verlorene Datenbank wiederherzustellen.

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

UPS ! Ein Fehler, hey, wir haben die Datenbank tecmint nicht erstellt . Gehen Sie also zu Ihrer MySQL-Eingabeaufforderung und erstellen Sie eine Datenbank „tecmint ‘.

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

mysql>

Jetzt ist es an der Zeit, den Wiederherstellungsbefehl an Ihrem Shell-Prompt auszuführen (streng).

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

Überprüfen Sie Ihre Datenbank.

mysql> show databases; 

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

Überprüfen Sie den Inhalt der Datenbank.

mysql> show tables from tecmint;

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

mysql>

Überprüfen Sie den Inhalt Ihrer wiederhergestellten Tabelle.

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)

Dies ist definitiv nicht das Ende, wir werden das Konzept des Primärschlüssels behandeln , Fremdschlüssel , mehrere Tabellen und Ausführen von Abfragen mit einfachem PHP Skript im nächsten Teil des Artikels.

Vergessen Sie nicht, uns zu sagen , wie Sie sich gefühlt haben, als Sie den Artikel durchgegangen sind. Ihre Kommentare werden sehr geschätzt. Bleiben Sie gesund und Abgestimmt , bleiben mit Tecmint verbunden .