数据库的基本操作

启动关闭 MySQL 服务

MySQL 安装好后,默认是当 Windows 启动、停止时,MySQL 也自动、停止。不过,用户可以使用 Windows 下的服务管理器或从命令行使用 NET 命令来控制 MySQL 服务器。

  • 使用 Windows 下的服务管理器

    单击开始菜单,在搜索框中输入 “services.msc”,按【enter】键确认。在服务管理器中找到服务名为 MySQL 80 的服务项(我使用的是 MySQL 8.0 版本,5.7 版本之前服务名是 MySQL),点击鼠标右键就可以选择关闭、暂停、重新启动 MySQL 服务了。

  • 使用 NET 命令

    单击开始菜单,在搜索框中输入 “cmd”,就会出现命令提示符,再右键点击以管理员方式运行(否则会出现系统错误,拒绝访问)。输入 net start MySQL80 按回车键就能启动 MySQL 服务了,停止 MySQL 服务的命令为:net stop MySQL80

登入 MySQL 数据库

以 Windows 命令行方式登录数据库,连接 MySQL 的命令格式为:mysql -h hostname -u username -p

其中 MySQL 为登录命令,-h 后面的参数是服务器的主机地址,在这里客户端与服务器在同一台机器,所以输入 localhost 或者IP地址 127.0.0.1,-u 后面跟登录数据库的用户名称,在这里为 root,-p 是用户登录密码。

创建数据库

MySQL 安装完成后,会在其 data 目录下自动创建几个必需的数据库,可以使用 show databases;语句来查看当前所有存在的数据库。其中 mysql 是必需的,它描述用户访问权限,test 数据库一般给用户用于测试操作,其他的数据库将在后面介绍。

创建数据库的 SQL 语句:create database database_name;

数据库建好之后,可以使用 show create database database_name; 声明查看数据库的定义。

删除数据库

删除数据库是将已经存在的数据库从磁盘上删除,清除之后,数据库中的所有数据也将一同删除。

删除数据库的 SQL 语句:drop database database_name;

数据库存储引擎

数据库存储引擎是数据库底层软件,数据库管理系统(DBMS)使用数据引擎进行创建、查询、更新、删除操作。不同的存储引擎提供不同的存储机制、索引技巧、锁定水平等功能,使用不同的存储引擎,还可以获得特定的功能。现在很多不同的数据库管理系统都支持多种不同的数据引擎。MySQL 的核心就是存储引擎。

MySQL 存储引擎简介

MySQL 提供多个不同的存储引擎,包括处理事务安全的引擎和处理非事务安全的引擎。MySQL 不需要整个服务器都使用同一种存储引擎,每个表都可以使用不同的存储引擎。可以使用 show engines; 语句查看系统所支持的引擎类型。

Support 列的值表示某种引擎是否能使用:YES 表示可以使用,NO 表示不能使用,DEFAULT 表示该引擎为当前默认存储引擎。

InnoDB 存储引擎

InnDB 是事务型数据库的首选引擎,支持事务安全表(ACID),支持行锁定和外键。MySQL 5.5.5之后,InnoDB 作为默认存储引擎。

MyISAM 存储引擎

MyISAM 基于 ISAM 的存储引擎,并对其进行扩展。它是在 Web、数据存储和其他应用环境下最常使用的存储引擎之一。MyISAM 拥有较高的插入、查询速度、但不支持事务。在 MySQL 5.5.5 之前版本中,MyISAM 是默认存储引擎。

MEMORY 存储引擎

MEMORY 存储引擎将表中的数据存储到内存中,为查询和引用其他表数据提供快速访问。

存储引擎的选择

不同存储引擎都有各自的特点,以适应不同的需求。为了做出选择,首先需要考虑每一个存储引擎提供了哪些不同的功能。

功能 MyISAM Memory InnoDB Archive
存储限制 256TB RAM 64TB None
支持事务 No No Yes No
支持全文索引 Yes No No No
支持数索引 Yes Yes Yes No
支持哈希索引 No Yes No No
支持数据缓存 No N/A Yes No
支持外键 No No Yes No
  • 如果要提供提交、回滚和崩溃恢复能力的事务安全(ACID兼容)能力,并要求实现并发控制,InnoDB 是个很好的选择。

  • 如果数据表主要用来插入和查询记录,则 MyISAM 引擎能提供较高的处理效率。

  • 如果只是临时存放数据,数据量不大,并且不需要较高的数据安全性,可以选择将数据保存在内存中的

    Memory 引擎,MySQL 中使用该引擎作为临时表,存放查询的中间结果。

  • 如果只有 INSERT 和 SELECT 操作,可以选择 Archive 引擎,Archive 存储引擎支持高并发的插入操作,但是本身并不是事务安全的 。Archive存储引擎非常适合存储归档数据,如记录日志信息可以使用 Archive引擎。

  • 使用哪一种引擎要根据需要灵活选择,一个数据库中多个表可以使用不同引擎以满足各种性能和实际需求。使用合适的存储引擎,将会提高整个数据库的性能。

posted on 2018-10-22 19:48  kindleheart  阅读(262)  评论(0编辑  收藏  举报