Skip to content

mysql数据库的创建、删除与使用

概述

本文档包括数据库的创建、删除和使用。

查看mysql版本号

使用mysql -version查看mysql的版本号:

sh
[root@hopewait mysql]# mysql –version
mysql Ver 14.14 Distrib 5.6.35, for Linux (x86_64) using EditLine wrapper

mysql数据库物理文件存放位置

使用%datadir%查看物理文件存放目录:

sql
mysql> show global variables like "%datadir%" \G
*************************** 1. row ***************************
Variable_name: datadir
    Value: /usr/local/mysql/data/
1 row in set (0.06 sec)

显示存在的数据库

使用show databases查看当前数据库系统中所有的数据库名称:

sql
mysql>  show databases\G
*************************** 1. row ***************************
Database: information_schema
*************************** 2. row ***************************
Database: mysql
*************************** 3. row ***************************
Database: performance_schema
*************************** 4. row ***************************
Database: test
*************************** 5. row ***************************
Database: wordpress
5 rows in set (0.08 sec)

创建数据库

使用create database database_name创建数据库:

sql
mysql> create database test_db;
Query OK, 1 row affected (0.00 sec)
    
mysql>  show databases\G
*************************** 1. row ***************************
Database: information_schema
*************************** 2. row ***************************
Database: mysql
*************************** 3. row ***************************
Database: performance_schema
*************************** 4. row ***************************
Database: test
*************************** 5. row ***************************
Database: wordpress
*************************** 6. row ***************************
Database: test_db
5 rows in set (0.08 sec)

查看创建好的数据库的定义

使用show create database database_name可以查看创建好的数据库是如何定义的:

sql
mysql> show create database test_db\G
*************************** 1. row ***************************
Database: test_db
Create Database: CREATE DATABASE `test_db` /*!40100 DEFAULT CHARACTER SET latin1 */
1 row in set (0.00 sec)

使用数据库

使用use database_name切换数据库,在该数据库下面工作:

sql
mysql> use test_db;
Database changed

删除数据库

使用drop database database_name删除数据库:

sql
mysql> drop database test_db;
Query OK, 0 rows affected (0.01 sec)
    
mysql> show create database test_db\G
ERROR 1049 (42000): Unknown database 'test_db'

数据库删除后,数据库中的存储的所有数据表和数据也一同被删除,而且不能恢复。需谨慎操作!!!

数据库存储引擎

  • 数据库存储引擎是数据库底层软件组件,数据库管理系统DBMS使用数据引擎进行创建、查询、更新和删除数据操作。
  • 不同的存储引擎提供不同的存储机制、索引技巧、锁定水平等功能,使用不同的存储引擎,可以获得特定的功能。
  • 针对具体的要求,可以对每一个使用不同的存储引擎。
  • 可以使用show engines查看系统所支持的引擎类型。
  • Support列表示某种引擎是否能使用。YES表示可以使用,NO表示不能使用,DEFAULT表示默认存储引擎。
  • mysql5.5.5之后默认存储引擎为InnoDB(事务型数据库的首选引擎,支持事务安全表ACID,支持行锁定和外键)。
  • mysql5.5.5之前默认存储引擎为MyISAM(拥有较高的插入、查询速度,但不支持事务)。

查看存储引擎:

sql
mysql> show engines \G
*************************** 1. row ***************************
Engine: MRG_MYISAM
Support: YES
Comment: Collection of identical MyISAM tables
Transactions: NO
XA: NO
Savepoints: NO
*************************** 2. row ***************************
Engine: CSV
Support: YES
Comment: CSV storage engine
Transactions: NO
XA: NO
Savepoints: NO
*************************** 3. row ***************************
Engine: MyISAM
Support: DEFAULT
Comment: Default engine as of MySQL 3.23 with great performance
Transactions: NO
XA: NO
Savepoints: NO
*************************** 4. row ***************************
Engine: InnoDB
Support: YES
Comment: Supports transactions, row-level locking, and foreign keys
Transactions: YES
XA: YES
Savepoints: YES
*************************** 5. row ***************************
Engine: MEMORY
Support: YES
Comment: Hash based, stored in memory, useful for temporary tables
Transactions: NO
XA: NO
Savepoints: NO
5 rows in set (0.00 sec)
    
mysql> show engines\G
*************************** 1. row ***************************
Engine: FEDERATED
Support: NO
Comment: Federated MySQL storage engine
Transactions: NULL
XA: NULL
Savepoints: NULL
*************************** 2. row ***************************
Engine: MRG_MYISAM
Support: YES
Comment: Collection of identical MyISAM tables
Transactions: NO
XA: NO
Savepoints: NO
*************************** 3. row ***************************
Engine: MyISAM
Support: YES
Comment: MyISAM storage engine
Transactions: NO
XA: NO
Savepoints: NO
*************************** 4. row ***************************
Engine: BLACKHOLE
Support: YES
Comment: /dev/null storage engine (anything you write to it disappears)
Transactions: NO
XA: NO
Savepoints: NO
*************************** 5. row ***************************
Engine: CSV
Support: YES
Comment: CSV storage engine
Transactions: NO
XA: NO
Savepoints: NO
*************************** 6. row ***************************
Engine: MEMORY
Support: YES
Comment: Hash based, stored in memory, useful for temporary tables
Transactions: NO
XA: NO
Savepoints: NO
*************************** 7. row ***************************
Engine: ARCHIVE
Support: YES
Comment: Archive storage engine
Transactions: NO
XA: NO
Savepoints: NO
*************************** 8. row ***************************
Engine: PERFORMANCE_SCHEMA
Support: YES
Comment: Performance Schema
Transactions: NO
XA: NO
Savepoints: NO
*************************** 9. row ***************************
Engine: InnoDB
Support: DEFAULT
Comment: Supports transactions, row-level locking, and foreign keys
Transactions: YES
XA: YES
Savepoints: YES
9 rows in set (0.00 sec)

查看默认存储引擎

storage_engine变量中保存了默认存储引擎:

sql
mysql> show variables like 'storage_engine'\G
*************************** 1. row ***************************
Variable_name: storage_engine
Value: InnoDB
1 row in set (0.00 sec)

本首页参考 https://notes.fe-mm.com/ 配置而成