>  기사  >  데이터 베이스  >  MariaDB(MySQL) 생성, 삭제, 선택 및 데이터타입 사용법에 대한 자세한 설명_MySQL

MariaDB(MySQL) 생성, 삭제, 선택 및 데이터타입 사용법에 대한 자세한 설명_MySQL

WBOY
WBOY원래의
2016-10-09 08:33:39867검색

1. MariaDB 소개(MySQL 소개는 생략)

MariaDB 데이터베이스 관리 시스템은 주로 오픈 소스 커뮤니티에서 유지 관리하는 MySQL의 한 부분으로, GPL에 따라 라이센스가 부여됩니다. MySQL을 쉽게 대체할 수 있습니다. 스토리지 엔진으로는 MySQL의 InnoDB 대신 XtraDB(영문: XtraDB)를 사용한다. MariaDB는 MySQL의 창립자인 Michael Widenius(영어: Michael Widenius)가 이전에 자신이 설립한 회사인 MySQL AB를 SUN에 10억 달러에 매각한 후 SUN이 Oracle에 인수되면서 MySQL이 소유권을 갖게 되었습니다. 또한 오라클의 손에 넘어갔습니다. MariaDB라는 이름은 Michael Widenius의 딸 Maria의 이름에서 유래되었습니다.

MariaDB MySQL의 MyISAM 스토리지 엔진을 대체하는 트랜잭션 기반 Maria 스토리지 엔진은 포크 개발자가 곧 출시될 MySQL 5.4 InnoDB 성능에 대한 액세스를 제공하기를 희망하는 InnoDB의 변형인 Percona의 XtraDB를 사용합니다. 이 버전에는 PrimeBase XT(PBXT) 및 FederatedX 스토리지 엔진도 포함되어 있습니다.

2. MariaDB 생성, 삭제, 선택 및 데이터 유형 사용에 대한 자세한 설명(참고: 이 문서에서는 루트 권한을 보여줍니다.)

(1) MariaDB가 데이터베이스를 생성합니다

1.1: mysqladmin을 사용하여 데이터베이스 생성

[root@test01 10.19.166.166 ~ ] 
# mysqladmin -u root -p create testdb1
Enter password:  // 此处填写MariaDB数据库的密码
 
[root@test01 10.19.166.166 ~ ] 
# mysql
 
MariaDB [(none)]> show databases;
+--------------------+
| Database      |
+--------------------+
| hellodb      |
| information_schema |
| mydb        |
| mysql       |
| performance_schema |
| test        |
| testdb       |
| testdb1      |<---创建的好的库
+--------------------+

1.2: MariaDB 라이브러리에 로그인하여
생성

MariaDB [(none)]> create database testdb2;
Query OK, 1 row affected (0.00 sec)
 
MariaDB [(none)]> show databases;
+--------------------+
| Database      |
+--------------------+
| hellodb      |
| information_schema |
| mydb        |
| mysql       |
| performance_schema |
| test        |
| testdb       |
| testdb1      |
| testdb2      |<---创建好的库
+--------------------+

(2) MariaDB 데이터베이스 삭제

2.1: mysqladmin을 사용하여 데이터베이스 삭제

[root@test01 10.19.166.166 ~ ] 
# mysqladmin -u root -p drop testdb1
Enter password: //输入数据库密码
 
//执行完上面的删除命令后,会出现一个提示框,提示是否确认删除此数据库
Dropping the database is potentially a very bad thing to do.
Any data stored in the database will be destroyed.
 
Do you really want to drop the 'testdb1' database [y/N] y  //删除
Database "testdb1" dropped

보려면 로그인하세요

MariaDB [(none)]> show databases; //确认testdb1已被删除 
+--------------------+
| Database      |
+--------------------+
| hellodb      |
| information_schema |
| mydb        |
| mysql       |
| performance_schema |
| test        |
| testdb       |
| testdb2      |
+--------------------+

2.2: MariaDB 라이브러리에 로그인하여
삭제

MariaDB [(none)]> drop database testdb2;
Query OK, 0 rows affected (0.00 sec)
 
MariaDB [(none)]> show databases; //确认testdb2已被删除
+--------------------+
| Database      |
+--------------------+
| hellodb      |
| information_schema |
| mydb        |
| mysql       |
| performance_schema |
| test        |
| testdb       |
+--------------------+

(3) MariaDB는 데이터베이스를 선택하고 선택한 데이터베이스 아래의 모든 테이블을 봅니다.

MariaDB [(none)]> show databases; //查看所有库
+--------------------+
| Database      |
+--------------------+
| hellodb      |
| information_schema |
| mydb        |
| mysql       |
| performance_schema |
| test        |
| testdb       |
+--------------------+
7 rows in set (0.00 sec)
 
MariaDB [(none)]> use mydb //选择mydb数据库 
Database changed  
MariaDB [mydb]> show tables;  //查看mydb数据库下面所有表信息
+----------------+
| Tables_in_mydb |
+----------------+
| ssc      |
| t1       |
| tb2      |
| tb4      |
| tb5      |
+----------------+
5 rows in set (0.00 sec)

(4) MariaDB 데이터 유형
MariaDB에 정의된 데이터 필드 유형은 데이터베이스 최적화에 매우 중요합니다
MariaDB는 다양한 유형을 지원하는데, 이는 대략 숫자 값, 날짜/시간, 문자열(문자 유형)의 세 가지 범주로 나눌 수 있습니다

4.1 숫자형

유형 크기 범위(서명됨) 범위(부호 없음) 목적 TINYINT 1바이트 (-128,127) (0,255) 작은 정수 값 SMALLINT 2바이트 (-32 768,32767) (0,65535) 큰 정수 값 보통 3바이트 (-8 388 608, 8 388 607) (0,16 777 215) 큰 정수 값 INT 또는 INTEGER 4바이트 (-2 147 483 648, 2 147 483 647) (0, 4 294 967 295) 큰 정수 값 빅인트 8바이트 (-9 233 372 036 854 775 808, 9 223 372 036 854 775 807) (0,18 446 744 073 709 551 615) 큰 정수 값 플로트 4바이트 (-3.402 823 466 E+38, 1.175 494 351 E-38), 0, (1.175 494 351 E-38, 3.402 823 466 351 E+38) 0, (1.175 494 351 E-38, 3.402 823 466 E+38) 단정밀도
类型 大小 范围(有符号) 范围(无符号) 用途
TINYINT 1字节 (-128,127) (0,255) 小整数值
SMALLINT 2字节 (-32 768,32767) (0,65 535) 大整数值
MEDIUMINT 3 字节 (-8 388 608,8 388 607) (0,16 777 215) 大整数值
INT或INTEGER 4 字节 (-2 147 483 648,2 147 483 647) (0,4 294 967 295) 大整数值
BIGINT 8 字节 (-9 233 372 036 854 775 808,9 223 372 036 854 775 807) (0,18 446 744 073 709 551 615) 极大整数值
FLOAT 4 字节 (-3.402 823 466 E+38,1.175 494 351 E-38),0,(1.175 494 351 E-38,3.402 823 466 351 E+38) 0,(1.175 494 351 E-38,3.402 823 466 E+38) 单精度
浮点数值
DOUBLE 8 字节 (1.797 693 134 862 315 7 E+308,2.225 073 858 507 201 4 E-308),0,(2.225 073 858 507 201 4 E-308,1.797 693 134 862 315 7 E+308) 0,(2.225 073 858 507 201 4 E-308,1.797 693 134 862 315 7 E+308) 双精度
浮点数值
DECIMAL 对DECIMAL(M,D) ,如果M>D,为M+2否则为D+2 依赖于M和D的值 依赖于M和D的值 小数值
부동 소수점 값 더블 8바이트 (1.797 693 134 862 315 7 E+308, 2.225 073 858 507 201 4 E-308), 0, (2.225 073 858 507 201 4 E-308, 1.797 693 134 862 315 7 E +30 8) 0, (2.225 073 858 507 201 4 E-308, 1.797 693 134 862 315 7 E+308) 더블 부동 소수점 값 십진수 DECIMAL(M,D)의 경우 M>D이면 M+2이고, 그렇지 않으면 D+2입니다. M과 D의 값에 따라 다름 M과 D의 값에 따라 다름 십진수

4.2 날짜 및 시간 유형

시간 값을 나타내는 날짜 및 시간 유형은 DATETIME, DATE, TIMESTAMP, TIME 및 YEAR입니다.
각 시간 유형에는 유효한 값의 범위와 MySQL이 표현할 수 없는 잘못된 값을 지정할 때 사용되는 "0" 값이 있습니다.
TIMESTAMP 유형에는 나중에 설명할 독점 자동 업데이트 기능이 있습니다.

类型 大小(字节) 范围 格式 用途
DATE 3 1000-01-01/9999-12-31 YYYY-MM-DD 日期值
TIME 3 '-838:59:59'/'838:59:59' HH:MM:SS 时间值或持续时间
YEAR 1 1901/2155 YYYY 年份值
DATETIME 8 1000-01-01 00:00:00/9999-12-31 23:59:59 YYYY-MM-DD HH:MM:SS 混合日期和时间值
TIMESTAMP 8 1970-01-01 00:00:00/2037 年某时 YYYYMMDD HHMMSS 混合日期和时间值,时间戳

 4.3 문자열 유형

문자열 유형은 CHAR, VARCHAR, BINARY, VARBINARY, BLOB, TEXT, ENUM 및 SET을 참조합니다. 이 섹션에서는 이러한 유형의 작동 방식과 쿼리에서 이를 사용하는 방법을 설명합니다.

类型 大小 用途
CHAR 0-255字节 定长字符串
VARCHAR 0-255字节 变长字符串
TINYBLOB 0-255字节 不超过 255 个字符的二进制字符串
TINYTEXT 0-255字节 短文本字符串
BLOB 0-65 535字节 二进制形式的长文本数据
TEXT 0-65 535字节 长文本数据
MEDIUMBLOB 0-16 777 215字节 二进制形式的中等长度文本数据
MEDIUMTEXT 0-16 777 215字节 中等长度文本数据
LOGNGBLOB 0-4 294 967 295字节 二进制形式的极大文本数据
LONGTEXT 0-4 294 967 295字节 极大文本数据

CHAR와 VARCHAR 유형은 유사하지만 저장하고 검색하는 방식이 다릅니다. 또한 최대 길이와 후행 공백이 유지되는지 여부도 다릅니다. 저장 또는 검색 중에는 대소문자 변환이 수행되지 않습니다.

BINARY 및 VARBINARY 클래스는 이진이 아닌 문자열 대신 이진 문자열을 포함한다는 점을 제외하면 CHAR 및 VARCHAR과 유사합니다. 즉, 문자열이 아닌 바이트 문자열을 포함합니다. 이는 문자 세트가 없으며 정렬 및 비교가 열 값 바이트의 숫자 값을 기반으로 함을 의미합니다.
BLOB는 가변적인 양의 데이터를 보유할 수 있는 이진 대형 개체입니다. BLOB 유형에는 TINYBLOB, BLOB, MEDIUMBLOB 및 LONGBLOB의 4가지가 있습니다. 값을 저장할 수 있는 최대 길이만 다릅니다.

TINYTEXT, TEXT, MEDIUMTEXT, LONGTEXT의 4가지 TEXT 유형이 있습니다. 이는 최대 길이와 저장 요구 사항이 동일한 4가지 BLOB 유형에 해당합니다.

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