数据库操作


数据库是指长期存储在服务器中,有组织的和可共享的数据集合。

创建数据库

创建数据库是指在数据库系统中划分一块空间,用来存储相应的数据

--查看已存在的数据库
show databases;
--创建一个新的数据库
create database example;

删除数据库

删除数据库是指在数据库系统中删除已经存在的数据库。删除数据库后,原来分配的空间将被收回。删除数据库会删除数据库中的所有表和所有数据。

--删除数据库example
drop database example;

数据库存储引擎

数据库的存储引擎就是指表的类型。数据库的存储引擎决定了表在服务器中的存储方式。
存储引擎的概念是MariaDB的特点,而且是一种插入式的存储引擎概念,因此MariaDB数据库中的表可以用不同的方式存储。用户可以根据自己的要求不同,选择不同的存储方式,以及是否启用事务等。
查看MariaDB数据库支持的存储引擎类型:

MariaDB [(none)]> 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: Stores tables as CSV files
Transactions: NO
          XA: NO
  Savepoints: NO
*************************** 3. row ***************************
      Engine: SEQUENCE
     Support: YES
     Comment: Generated tables filled with sequential values
Transactions: YES
          XA: NO
  Savepoints: YES
*************************** 4. row ***************************
      Engine: MyISAM
     Support: YES
     Comment: Non-transactional engine with good performance and small data footprint
Transactions: NO
          XA: NO
  Savepoints: NO
*************************** 5. row ***************************
      Engine: MEMORY
     Support: YES
     Comment: Hash based, stored in memory, useful for temporary tables
Transactions: NO
          XA: NO
  Savepoints: NO
*************************** 6. row ***************************
      Engine: InnoDB
     Support: DEFAULT
     Comment: Supports transactions, row-level locking, foreign keys and encryption for tables
Transactions: YES
          XA: YES
  Savepoints: YES
*************************** 7. row ***************************
      Engine: Aria
     Support: YES
     Comment: Crash-safe tables with MyISAM heritage
Transactions: NO
          XA: NO
  Savepoints: NO
*************************** 8. row ***************************
      Engine: PERFORMANCE_SCHEMA
     Support: YES
     Comment: Performance Schema
Transactions: NO
          XA: NO
  Savepoints: NO
参数含义
Engine存储引擎名称
Support说明MariaDB是否支持该类引擎
Comment对该引擎的评论
Transactions是否支持事务功能
XA是否支持分布式交易处理的XA规范
Savepoints是否支持保存点,以便事务回滚到保存点

MariaDB默认的存储引擎是InnoDB。

InnoDB存储引擎

InnoDB是MariaDB数据库的一种存储引擎,InnoDB给数据库的表提供了事务、回滚、崩溃修复能力和多版本并发控制的事务安全。
InnoDB支持自增auto_increment,自增的值不能为空且必须唯一。
InnoDB支持外键,外键所在的表为子表,外键所依赖的表为父表。父表中被子表关联的字段必须为主键。
当然InnoDB也有缺点,它的读写效率较差,占用的数据空间也相对较大。

MyISAM存储引擎

MyISAM存储引擎是基于ISAM存储引擎发展起来的,MyISAM增加了许多有用的扩展。
MyISAM的表存储成3个文件,文件的名字与表名相同,扩展名为frm、MYD和MYI,frm文件存储表的结构;MYD文件存储数据;MYI文件存储索引。
基于MyISAM存储引擎的表支持3种存储格式:

  • 静态型:默认存储格式,其字段是固定长度的
  • 动态型:包含变长字段,记录的长度不是固定的
  • 压缩型:需要myisampack工具创建,需要的磁盘空间较小

MyISAM存储引擎的优势是占用空间小,处理速度快。缺点是不支持事务。

MEMORY存储引擎

MEMORY存储引擎是MariaDB中一种特殊的存储引擎,使用存储在内存中的内容来创建表,所有数据都放在内存中。
每个基于MEMORY存储引擎的表实际上都对应一个磁盘文件。该文件的文件名与表名相同,类型为frm类型,并且只存储表的结构,而它的数据都存储在内存中,这样提高了数据的快速处理性能。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值