语法格式:
SHOW {DATABASES | SCHEMAS} [LIKE 'pattern' | WHERE expr]
#查看全部数据库
mysql> show databases; +--------------------+ | Database | +--------------------+ | information_schema | | mysql | | performance_schema | | sys | +--------------------+ 4 rows in set (0.00 sec)
show databases [like '库名'| where 表达式];
例:查看有my的数据库
show databases like 'my%'
MySQL安装好之后,⾸先需要创建数据库,这是使⽤MySQL各种功能的前提。本章将详细介绍数据的基本操作,主要内容包括:创建数据库、删除数据库、不同类型的数据存储引擎和存储引擎的选择。
MySQL安装完成之后,将会在其data⽬录下⾃动创建⼏个必需的数据库,可以使⽤SHOW DATABASES; 语句来查看当前所有存在的数据库,如下。
mysql> show databases; +--------------------+ | Database | +--------------------+ | information_schema | | mysql | | performance_schema | | sys | +--------------------+ 4 rows in set (0.01 sec)
可以看到,数据库列表中包含了4个数据库,mysql是必需的,它描述⽤户访问权限,⽤户经常利⽤test数据库做测试的⼯作,其他数据库将在后⾯的章节中介绍。
创建数据库是在系统磁盘上划分⼀块区域⽤于数据的存储和管理,如果管理员在设置权限的时候为⽤户创建了数据库,则可以直接使⽤,否则,需要⾃⼰创建数据库。MySQL中创建数据库的基本SQL语句格式为:
CREATE DATABASE [IF NOT EXISTS] <数据库名> [[DEFAULT] CHARACTER SET <字符集名>] [[DEFAULT] COLLATE <校对规则名>];
<数据库名>:创建数据库的名称。MySQL 的数据存储区将以⽬录⽅式表示 MySQL数据库,因此数据库名称必须符合操作系统的⽂件夹命名规则,注意在 MySQL 中不区分⼤⼩写。
IF NOT EXISTS:在创建数据库之前进⾏判断,只有该数据库⽬前尚不存在时才能执⾏操作。此选项可以⽤来避免数据库已经存在⽽重复创建的错误。
[DEFAULT] CHARACTER SET:指定数据库的默认字符集。
mysql> create database test_db; Query OK, 1 row affected (0.00 sec) mysql> show create database test_db; +----------+--------------------------------------------------------------------+ | Database | Create Database | +----------+--------------------------------------------------------------------+ | test_db | CREATE DATABASE `test_db` /*!40100 DEFAULT CHARACTER SET latin1 */ | +----------+--------------------------------------------------------------------+ 1 row in set (0.00 sec)
删除数据库是将已经存在的数据库从磁盘空间上清除,清除之后,数据库中的所有数据也将⼀起被删除。删除数据库语句和创建数据库的命令相似,MySQL中删除数据库的基本语法格式如下。
DROP {DATABASE | SCHEMA} [IF EXISTS] 库名
注:IF EXISTS表示如果存在,则删除库。
如果指定的数据库不存在,则删除出错。
mysql> drop database test_db; Query OK, 0 rows affected (0.02 sec)
#查看字符校验
show collation;
#查看字符集
show character set;
#查看字符集
SHOW CHARACTER SET [LIKE 'pattern' | WHERE expr]show character set [like '字符集名' | where 表达式];
#查看字符校验
SHOW COLLATION [LIKE 'pattern' | WHERE expr] show collation [like '字符校验名' | where 表达式];
ALTER {DATABASE | SCHEMA} [db_name] alter_option ... alter_option: { [DEFAULT] CHARACTER SET [=] charset_name | [DEFAULT] COLLATE [=] collation_name }
#修改库字符集
alter database 库名 default character set = 字符集名;
#修改字符校验
alter database test collate 字符校验名;
#帮助
help
#帮助分类
help contents
#查看定义语言
help data definition
#查看操作语言
help data manipulation
#查看创建库格式
help create database
数据库存储引擎是数据库底层软件组件,数据库管理系统(DBMS)使⽤数据引擎进⾏创建、查询、更新和删除数据操作。不同的存储引擎提供不同的存储机制、索引技巧、锁定⽔平等功能,使⽤不同的存储引擎,还可以获得特定的功能。现在许多不同的数据库管理系统都⽀持多种不同的数据引擎。MySQL的核⼼就是存储引擎。
2.3.1 MySQL存储引擎简介MySQL提供了多个不同的存储引擎,包括处理事务安全表的引擎和处理⾮事务安全表的引擎。在MySQL中,不需要在整个服务器中使⽤⼀种引擎,针对具体要求可以对每⼀个表使⽤不同的存储引擎。MySQL5.5⽀持的存储引擎有:InnoDB、MyISAM、Memory等。
mysql> show engines; +--------------------+---------+----------------------------------------------------------------+--------------+------+------------+ | Engine | Support | Comment | Transactions | XA | Savepoints | +--------------------+---------+----------------------------------------------------------------+--------------+------+------------+ | MRG_MYISAM | YES | Collection of identical MyISAM tables | NO | NO | NO | | CSV | YES | CSV storage engine | NO | NO | NO | | InnoDB | DEFAULT | Supports transactions, row-level locking, and foreign keys | YES | YES | YES | | BLACKHOLE | YES | /dev/null storage engine (anything you write to it disappears) | NO | NO | NO | | MyISAM | YES | MyISAM storage engine | NO | NO | NO | | PERFORMANCE_SCHEMA | YES | Performance Schema | NO | NO | NO | | ARCHIVE | YES | Archive storage engine | NO | NO | NO | | MEMORY | YES | Hash based, stored in memory, useful for temporary tables | NO | NO | NO | | FEDERATED | NO | Federated MySQL storage engine | NULL | NULL | NULL | +--------------------+---------+----------------------------------------------------------------+--------------+------+------------+ 9 rows in set (0.01 sec)
mysql> show variables like 'default_storage_engine'; +------------------------+--------+ | Variable_name | Value | +------------------------+--------+ | default_storage_engine | InnoDB | +------------------------+--------+ 1 row in set (0.06 sec)
MyISAM 存储引擎特点
MyISAM 适⽤场景
InnoDB 存储引擎特点
InnoDB 适⽤场景
Memory 存储引擎特点
功能 | MyISAM | Memory | InnoDB |
存储限制 | 256TB | RAM | 64TB |
⽀持事务 | no | no | yes |
支持全文索引 | yes | no | no |
支持数索引 | yes | yes | yes |
支持哈希缓存 | no | yes | no |
支持数据缓存 | no | N/A | yes |
支持外键 | no | no | yes |
在mysql中,每个数据库最多可创建20亿个表,⼀个表允许定义1024列,每⾏的最⼤⻓度为8092字节(不包括⽂本和图像类型的⻓度)。
当表中定义有varchar、nvarchar或varbinary类型列时,如果向表中插⼊的数据⾏超过8092字节时将导致语句失败,并产⽣错误信息。SQL Server对每个表中⾏的数量没有直接限制,但它受数据库存储空间的限制。
每个数据库的最⼤空间1048516TB,所以⼀个表可⽤的最⼤空间为1048516TB减去数据库类系统表和其它数据库对象所占⽤的空间。理论上⽆限⼤ 就看你硬⽚够不够⼤ ⼤多数情况先是你的硬⽚不够。
到此这篇关于MySQL中库的基本操作指南的文章就介绍到这了,更多相关MySQL库的基本操作内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
编程 | 2023-02-24 21:36
编程 | 2023-02-21 12:51
编程 | 2023-02-21 12:47
编程 | 2023-02-21 00:15
编程 | 2023-02-21 00:08
编程 | 2023-02-20 21:46
编程 | 2023-02-20 21:42
编程 | 2023-02-20 21:36
编程 | 2023-02-20 21:32
编程 | 2023-02-20 18:12
网友评论