>  기사  >  데이터 베이스  >  Mac에서 MySQL 데이터베이스의 터미널 관리 구현

Mac에서 MySQL 데이터베이스의 터미널 관리 구현

php是最好的语言
php是最好的语言원래의
2018-08-07 11:42:011722검색

터미널을 열고 다음 명령을 입력하세요.

/usr/local/MySQL/bin/mysql -u root -p

여기서 루트는 사용자 이름입니다.

다음 명령이 나타납니다:

Enter password:

지금 비밀번호를 변경하지 않았다면 Enter 키를 누르세요. 그렇지 않으면 비밀번호를 입력하세요.
이렇게 하면 데이터베이스 서버에 액세스할 수 있습니다.


1. 운영 및 관리

데이터 테이블의 기본

데이터베이스 관리

1.1 create 데이터베이스 생성

create database firstDB;

1.2 show 모든 데이터베이스 보기

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

1.3 alter 데이터베이스 수정

alter 명령 수정 데이터베이스 인코딩:

기본적으로 생성된 데이터베이스는 기본적으로 한자를 지원하지 않습니다. 한자를 지원해야 하는 경우 인코딩을 utf8 형식으로 설정하세요.

mysql> ALTER DATABASE testDB CHARACTER SET UTF8;Query OK, 1 row affected (0.00 sec)

1.4 데이터베이스 사용

mysql> use firstDB;
Database changed

1.5 보기 현재 사용 중인 데이터베이스

mysql> select database();
+------------+| database() |
+------------+| firstdb    |
+------------+1 row in set (0.00 sec)

1.6 drop delete 데이터베이스

mysql> drop database firstDB;
Query OK, 0 rows affected (0.00 sec)

2. 데이터 테이블(테이블) 관리

먼저 향후 사용을 위해 데이터베이스를 생성합니다.

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

사용 후 사용을 기억하세요. ) 데이터베이스에 저장하지 않으면 후속 작업이 실패합니다.

2.1 create create table

mysql> create table PEOPLE (
    -> ID int AUTO_INCREMENT PRIMARY KEY,    -> NAME varchar(20) not null,    -> AGE int not null,    -> BIRTHDAY datetime);                                                     
Query OK, 0 rows affected (0.01 sec)

2.2 show display table

현재 데이터베이스의 모든 데이터 테이블 표시

mysql> show tables;
+------------------+| Tables_in_testdb |
+------------------+| PEOPLE           |
+------------------+1 row in set (0.00 sec)

2.3 desc view 테이블 구조

mysql> desc PEOPLE    -> ;
+----------+-------------+------+-----+---------+----------------+| Field    | Type        | Null | Key | Default | Extra          |
+----------+-------------+------+-----+---------+----------------+| ID       | int(11)     | NO   | PRI | NULL    | auto_increment |
| NAME     | varchar(20) | NO   |     | NULL    |                |
| AGE      | int(11)     | NO   |     | NULL    |                |
| BIRTHDAY | datetime    | YES  |     | NULL    |                |
+----------+-------------+------+-----+---------+----------------+
4 rows in set (0.01 sec)

2.4 테이블 구조 변경(추가, 삭제) , 변경)
기본적으로 생성되는 테이블은 한자를 지원하지 않으므로 테이블 인코딩을 utf8로 설정해야 합니다:

mysql> ALTER TABLE KEYCHAIN CONVERT TO CHARACTER SET UTF8;
Query OK, 1 row affected (0.02 sec)
Records: 1  Duplicates: 0  Warnings: 0

2.4.1 insert 테이블에 열(필드) 추가

mysql> alter table PEOPLE add star BOOL;Query OK, 0 rows affected (0.02 sec)Records: 0  Duplicates: 0  Warnings: 0

Tip : MySQL에서는 Boolean 유형이 자동으로tinyint(1) 유형으로 변환됩니다.

desc를 사용하여 PEOPLE 테이블 구조를 확인할 수도 있습니다.

mysql> desc PEOPLE;
+----------+-------------+------+-----+---------+----------------+| Field    | Type        | Null | Key | Default | Extra          |
+----------+-------------+------+-----+---------+----------------+| ID       | int(11)     | NO   | PRI | NULL    | auto_increment |
| NAME     | varchar(20) | NO   |     | NULL    |                |
| AGE      | int(11)     | NO   |     | NULL    |                |
| BIRTHDAY | datetime    | YES  |     | NULL    |                |
| star     | tinyint(1)  | YES  |     | NULL    |                |
+----------+-------------+------+-----+---------+----------------+
5 rows in set (0.00 sec)

이제 제 말을 믿으셔야겠죠?

2.4.2 alter 테이블(열) 필드 수정

mysql> alter table PEOPLE MODIFY star int;Query OK, 0 rows affected (0.01 sec)Records: 0  Duplicates: 0  Warnings: 0

int(2)와 같이 int(n)의 길이를 지정할 수도 있습니다.

desc를 다시 사용하여 PEOPLE 테이블 구조를 봅니다:

mysql> desc PEOPLE;
+----------+-------------+------+-----+---------+----------------+| Field    | Type        | Null | Key | Default | Extra          |
+----------+-------------+------+-----+---------+----------------+| ID       | int(11)     | NO   | PRI | NULL    | auto_increment |
| NAME     | varchar(20) | NO   |     | NULL    |                |
| AGE      | int(11)     | NO   |     | NULL    |                |
| BIRTHDAY | datetime    | YES  |     | NULL    |                |
| star     | int(11)     | YES  |     | NULL    |                |
+----------+-------------+------+-----+---------+----------------+
5 rows in set (0.00 sec)

2.4.3 delete 테이블(열) 필드 삭제

mysql> alter table PEOPLE DROP column star;Query OK, 0 rows affected (0.02 sec)Records: 0  Duplicates: 0  Warnings: 0

삭제 후 PEOPLE 테이블 구조를 다시 봅니다.

mysql> desc PEOPLE;
+----------+-------------+------+-----+---------+----------------+| Field    | Type        | Null | Key | Default | Extra          |
+----------+-------------+------+-----+---------+----------------+| ID       | int(11)     | NO   | PRI | NULL    | auto_increment |
| NAME     | varchar(20) | NO   |     | NULL    |                |
| AGE      | int(11)     | NO   |     | NULL    |                |
| BIRTHDAY | datetime    | YES  |     | NULL    |                |
+----------+-------------+------+-----+---------+----------------+
4 rows in set (0.00 sec)

필드 삭제에 성공했습니다. 이제 우리는 별 필드를 볼 수 없습니다.

2.4.4 rename 테이블 이름 이름 바꾸기

mysql> RENAME TABLE PEOPLE TO NEW_PEOPLE;
Query OK, 0 rows affected (0.00 sec)

2.4.5 null 또는 null 아님
null을 허용하거나 허용하지 않도록 테이블 필드를 수정합니다.

mysql> ALTER TABLE PEOPLE MODIFY AGE INT(3) NULL;
Query OK, 0 rows affected (0.01 sec)Records: 0  Duplicates: 0  Warnings: 0

테이블의 AGE 필드를 변경합니다. PEOPLE 테이블 "공백 허용"으로 설정합니다. 즉, 레코드를 삽입할 때 이 필드를 입력할 필요가 없습니다. 그렇지 않으면 그 반대입니다.
형식은 ALTER TABLE MODIFY

mysql> create table newTable select * from PEOPLE;
Query OK, 0 rows affected (0.01 sec)
Records: 0  Duplicates: 0  Warnings: 0

현재 데이터베이스에 존재하는 테이블을 확인해 보겠습니다:

mysql> show tables;
+------------------+| Tables_in_testdb |
+------------------+| PEOPLE           || newTable         |
+------------------+2 rows in set (0.00 sec)

3. 데이터 운영 및 관리

이 작업에는 데이터 추가, 삭제, 수정, 쿼리가 포함됩니다.
다음 명령은 모두 PEOPLE 테이블에서 작동합니다.

3.1 데이터 추가(증가)
현재 PEOPLE 테이블에는 데이터가 없습니다. 이제 데이터를 추가해 보겠습니다.
데이터를 추가하는 명령에 삽입:

mysql> insert into PEOPLE VALUES (null, 'Anny', 22, '1992-05-22');
Query OK, 1 row affected (0.00 sec)

select 명령을 사용하여 테이블을 봅니다(나중에 소개됩니다). 이제 PEOPLE 데이터 테이블의 데이터를 봅니다.

mysql> select * from PEOPLE;
+----+------+-----+---------------------+| ID | NAME | AGE | BIRTHDAY            |
+----+------+-----+---------------------+|  1 | Anny |  22 | 1992-05-22 00:00:00 |
+----+------+-----+---------------------+1 row in set (0.00 sec)

이제 데이터 테이블에는 하나의 데이터가 있습니다.

다음과 같은 몇 가지 데이터를 추가해 보겠습니다.

mysql> select * from PEOPLE;
+----+--------+-----+---------------------+| ID | NAME   | AGE | BIRTHDAY            |
+----+--------+-----+---------------------+|  1 | Anny   |  22 | 1992-05-22 00:00:00 |
|  2 | Garvey |  23 | 1991-05-22 00:00:00 |
|  3 | Lisa   |  25 | 1989-05-22 00:00:00 |
|  4 | Nick   |  24 | 1990-05-22 00:00:00 ||  5 | Rick   |  24 | 1991-05-22 00:00:00 |
+----+--------+-----+---------------------+5 rows in set (0.00 sec)

3.2 데이터 삭제(삭제)

delete 명령을 사용하여 데이터 삭제:

mysql> delete from PEOPLE where name = 'Lisa';
Query OK, 1 row affected (0.01 sec)

PEOPLE 테이블 다시 쿼리:

mysql> select * from PEOPLE;
+----+--------+-----+---------------------+| ID | NAME   | AGE | BIRTHDAY            |
+----+--------+-----+---------------------+|  1 | Anny   |  22 | 1992-05-22 00:00:00 |
|  2 | Garvey |  23 | 1991-05-22 00:00:00 |
|  4 | Nick   |  24 | 1990-05-22 00:00:00 ||  5 | Rick   |  24 | 1991-05-22 00:00:00 |
+----+--------+-----+---------------------+4 rows in set (0.00 sec)

더 이상 볼 수 없음 "Lisa" 데이터라는 이름의 파일입니다.

3.3 데이터 수정(변경)

update 데이터 수정 명령:

mysql> update PEOPLE set name='Calvin' where name = 'Garvey';
Query OK, 1 row affected (0.00 sec)Rows matched: 1  Changed: 1  Warnings: 0

PEOPLE 테이블의 내용 쿼리:

mysql> select * from PEOPLE;
+----+--------+-----+---------------------+| ID | NAME   | AGE | BIRTHDAY            |
+----+--------+-----+---------------------+|  1 | Anny   |  22 | 1992-05-22 00:00:00 |
|  2 | Calvin |  23 | 1991-05-22 00:00:00 |
|  4 | Nick   |  24 | 1990-05-22 00:00:00 ||  5 | Rick   |  24 | 1991-05-22 00:00:00 |
+----+--------+-----+---------------------+4 rows in set (0.00 sec)

"Garvey"라는 레코드가 "Calvin"으로 수정되었습니다.

3.4 데이터 쿼리(확인)

select 데이터를 쿼리하는 명령, 가장 간단한 것은 테이블의 모든 데이터를 쿼리하는 것입니다. 이는 우리가 처음에 사용한 명령입니다:

mysql> select * from PEOPLE;
+----+--------+-----+---------------------+| ID | NAME   | AGE | BIRTHDAY            |
+----+--------+-----+---------------------+|  1 | Anny   |  22 | 1992-05-22 00:00:00 |
|  2 | Calvin |  23 | 1991-05-22 00:00:00 |
|  4 | Nick   |  24 | 1990-05-22 00:00:00 ||  5 | Rick   |  24 | 1991-05-22 00:00:00 |
+----+--------+-----+---------------------+4 rows in set (0.00 sec)

형식: select * from 893e75d027ce6b089b1a03b1ace263d6, *는 모든 필드를 나타냅니다.

데이터를 쿼리할 때 표시되는(열) 필드를 지정할 수도 있습니다.

mysql> select NAME, AGE, BIRTHDAY from PEOPLE;
+--------+-----+---------------------+| NAME   | AGE | BIRTHDAY            |
+--------+-----+---------------------+| Anny   |  22 | 1992-05-22 00:00:00 |
| Calvin |  23 | 1991-05-22 00:00:00 |
| Nick   |  24 | 1990-05-22 00:00:00 || Rick   |  24 | 1991-05-22 00:00:00 |
+--------+-----+---------------------+4 rows in set (0.00 sec)

형식: 34cd3e9c1174c81e3622d1820b4b2875에서 cf8d7f40724de856c0a50634f35a8a65을 선택하세요.

select query 명령에는 고유한 데이터 찾기(distinct), 조건별 데이터 정렬(order by), 쿼리 조건에 따른 데이터 표시(where) 등과 같은 다양한 고급 용도도 있습니다. 이 내용은 다음 기사에서 강조하겠습니다. 계속해서 제 블로그에 관심을 가져주세요.

4. 뷰 관리

4.1 뷰 생성

뷰는 데이터베이스에서 하나 이상의 테이블을 내보내는 가상 테이블이며 사용자가 데이터를 쉽게 조작하는 데 사용됩니다.

mysql> CREATE VIEW PEOPLE_VIEW (
    -> NAME, AGE)
    -> AS SELECT NAME, AGE FROM PEOPLE;

생성 성공 후 보기를 확인하세요.

PEOPLE          PEOPLE.AGE      PEOPLE.BIRTHDAY PEOPLE.ID       PEOPLE.NAME    mysql> SELECT * FROM PEOPLE_VIEW
    -> ;+--------+-----+
| NAME   | AGE |
+--------+-----+
| Anny   |  22 |
| Calvin |  23 |
| Nick   |  24 |
| Rick   |  24 |
+--------+-----+4 rows in set (0.00 sec)

DESC 명령을 사용하여 뷰의 구조를 볼 수도 있습니다.

mysql> DESC PEOPLE_VIEW;
+-------+---------+------+-----+---------+-------+| Field | Type    | Null | Key | Default | Extra |
+-------+---------+------+-----+---------+-------+| ID    | int(11) | NO   |     | 0       |       |
+-------+---------+------+-----+---------+-------+1 row in set (0.01 sec)

4.2 보기 바꾸기

원본 보기를 만들거나 바꿉니다.

mysql> CREATE OR REPLACE VIEW PEOPLE_VIEW(PEOPLE_ID,PEOPLE_NAME,PEOPLE_AGE) AS SELECT ID,NAME,AGE FROM PEOPLE;
Query OK, 0 rows affected (0.00 sec)

생성 또는 교체 후 조회수를 확인하세요.

mysql> SELECT * FROM PEOPLE_VIEW;
+-----------+-------------+------------+| PEOPLE_ID | PEOPLE_NAME | PEOPLE_AGE |
+-----------+-------------+------------+|         1 | Anny        |         22 |
|         2 | Calvin      |         23 |
|         4 | Nick        |         24 ||         5 | Rick        |         24 |
+-----------+-------------+------------+4 rows in set (0.00 sec)

4.3 작업 뷰

뷰 데이터가 변경(추가, 삭제, 수정)되면 그에 따라 실제 테이블 데이터도 변경됩니다. 즉, 뷰에 대한 작업은 테이블의 데이터이므로 뷰를 테이블로 처리할 수 있습니다.

예: 뷰에 데이터 조각을 삽입합니다.

mysql> INSERT INTO PEOPLE_VIEW VALUES(NULL, 'Kerry', '33');
Query OK, 1 row affected (0.00 sec)

데이터 삽입 성공 후 보기를 확인하세요.

mysql> SELECT * FROM PEOPLE_VIEW ;
+-----------+-------------+------------+| PEOPLE_ID | PEOPLE_NAME | PEOPLE_AGE |
+-----------+-------------+------------+|         1 | Anny        |         22 |
|         2 | Calvin      |         23 |
|         4 | Nick        |         24 |
|         5 | Rick        |         24 ||         6 | Kerry       |         33 |
+-----------+-------------+------------+5 rows in set (0.00 sec)

可以在视图上看到我们刚刚插入的数据,现在我们就来验证一下真实的表是否也会作出变化。

mysql> SELECT * FROM PEOPLE;
+----+--------+-----+---------------------+| ID | NAME   | AGE | BIRTHDAY            |
+----+--------+-----+---------------------+|  1 | Anny   |  22 | 1992-05-22 00:00:00 |
|  2 | Calvin |  23 | 1991-05-22 00:00:00 |
|  4 | Nick   |  24 | 1990-05-22 00:00:00 |
|  5 | Rick   |  24 | 1991-05-22 00:00:00 ||  6 | Kerry  |  33 | NULL                |
+----+--------+-----+---------------------+5 rows in set (0.00 sec)

可见,真实的表数据也已经有所改变,刚刚往视图里插入的那一条数据存在于真实表中,真理便是:对视图的操作就是对表的数据。

4.4 删除视图

mysql> DROP VIEW PEOPLE_VIEW;Query OK, 0 rows affected (0.00 sec)

相关推荐:

mac使用终端运行mysql,mysql终端,mysql mac,mysql目录,mysql路径,macmysql

mac使用终端运行mysql,mysql终端,mysql mac,mysql目录,mysql路径

위 내용은 Mac에서 MySQL 데이터베이스의 터미널 관리 구현의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.