Mysql
 sql >> база данни >  >> RDS >> Mysql

Основни команди за администриране на база данни на MySQL – част I

База данни е структуриран набор от данни, съхранявани по електронен път. Концепцията за база данни е била позната на нашите предци дори когато не е имало компютри, но създаването и поддържането на такава база данни е много досадна работа. В ръчна база данни кажете 100 страници, ако трябва да търсите всички служители, чиято заплата е била по-малка от 10k , помислете само колко трудно щеше да е тогава.

В днешния свят просто не можете да избягате от База данни . В момента милиони бази данни работят по целия свят, за да съхраняват и извличат данни от всякакъв вид, било то стратегически данни, записи на служители или уеб технологии.

Базата данни често се нарича беден процес, тъй като не е видима нито за крайния потребител, нито за крайния потребител взаимодейства директно с базата данни. Те работят на фронтен процес, а именно PHP , VB , ASP.NET и т.н. и помолете предния край да се справи с базата данни в задния край.

Налични са няколко сървъра и клиента на база данни като Oracle , MySQL , MySQLi , MariaDB, MongoDB и т.н. Синтаксисът на всички тях е повече или по-малко един и същ. Овладяването на такъв означава получаване на контрол върху повечето от тях и изучаването на заявките на база данни е много лесно и забавно.

Нека започнем с прости заявки към базата данни. Ще използваме MySQL който идва в комплект с повечето от Linux дистрибуции по подразбиране, можете да го инсталирате ръчно от хранилището, ако не е инсталирано по подразбиране във вашия случай.

Ами заявката към база данни е прост код, който се изпраща до базата данни, за да се получи персонализиран и прецизиран резултат, както се изисква.

Инсталирайте MySQL база данни

Използвайте „yum ” или „apt ” пакетен мениджър за инсталиране на 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 база данни ще ви отведе до конфигурацията, където ще бъдете помолени да настроите admin парола и др. След като приключите с инсталирането и стартирането на сървъра, отидете на вашия MySQL подкана.

# mysql -u root -p

Сменете root с конфигурираното от вас потребителско име и въведете парола когато бъдете подканени, ако идентификационните данни за вход са правилни, ще бъдете във вашия 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>

Сега извършването на заявки в тази подкана е много образователно и забавно.

Създайте база данни tecmint
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>

Забележка :Горната заявка казва OK което означава, че таблицата е създадена без грешка. За да проверите таблицата, изпълнете заявката по-долу.

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. Int е цяло число
  2. Варчар е char с променлива дължина, както е дефинирано. Стойността след Type е дължината на полето, до което може да съхранява данни.

Добре, сега трябва да добавим колона „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“ . Винаги е добра идея да използвате повече от една колона с клауза where, за да получите минимална грешка, като:

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)

Проверете за база данни „tecmint“ на вашия сървър на база данни.

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 с Oracle Heterogeneous Services

  2. Как да получите възраст от D.O.B поле в MySQL?

  3. MySQL разделя низ, разделен със запетая, във времева таблица

  4. MySQL индекси – какви са най-добрите практики?

  5. Еквивалент на RowID на Oracle в MySQL