还剩13页未读,继续阅读
本资源只提供10页预览,全部文档请下载后查看!喜欢就下载吧,查找使用更方便
文本内容:
MySQL是一个开源关系数据库管理系统(RDBMS)它既可以在网络上运行,也可以在服务器上运行MySQL快速、可靠且易于使用它是开源软件MySQL使用标准眺并在多种平台上编译它是一个多线程、多用户的SQL数据库管理系统政眺数据库中的数据以表的形式存储表是相关数据的集合,由列和行组成MySQL具有独立的客户端,允许用户使用SQL直接与MySQL数据库交互,但更常见的是MySQL与其他程序一起使用来实现需要关系数据库功能的应用程序MySQL的安装量已超过1100万基本MySQL面试问题
1.MySQL是什么?MySQL是一个用于Web服务器的数据库管理系统它可以随着网站一起成长,因为它具有高度可扩展性当今大多数网站均由MySQL提供支持
2.使用MySQL有哪些优点•灵活性MySQL可在所有操作系统上运行•强大MySQL注重性能•企业级SQL功能MySQL一段时间以来一直缺乏高级功能,例如子查询、视图和存储过程•全文索引和搜索•查询缓存这有助于大大提高MySQL的速度•复制一台MySQL服务器可以在另一台服务器上复制,从而提供许多优势•配置和安全
3.“数据库”是什么意思?数据库是存储在计算机系统中并以可快速搜索的方式组织的结构化数据集合通过数据库,可以快速检索信息当您将MySQL与其他数据库系统进行比较时,请考虑什么对您最重要性能、功能(例如SQL一致性或扩展)、支持、许可条件和价格都是需要考虑的因素MySQL是用于开发各种基于Web的软件应用程序的最佳RDBMS之一MySQL提供两种不同的版本开源MySQL CommunityServer和专有EnterpriseServer考虑到这些因素,MySQL有许多吸引人的品质•速度•使用方便•查询语言支持•能力•连接性和安全性•可移植性•可用性和成本•开放分发和源代码MySQL MCQ问题
1.字符数据可以存储为—r固定长度字符串变长字符串r固定或可变长度字符串「以上都不是
2.MySQL支持不同的字符集哪个命令用来显示所有字符集显示字符集;展示;字符集;以上都不是
3.以下哪一个具有最大字节数?瓦尔查尔字符r文本类型c工Varchar和Char
4.MySQL能够以批处理模式从文件中读取输入这也称为非交互模式当命令存储在文件中并从文件执行时,可以节省大量的输入和时间上述说法是真是假?真的错误的
5.以下哪项不是MySQL的特性?c一一开源r可移植性r速度慢r桂用方便
6.以下哪条命令用于在MySQL中创建数据库?创建数据库db_name;建立数据库创建数据库db_name;r创建数据库
7.用于设置MySQL的连接参数可以存储在选项文件中,以便每次建立连接时无需键入名称r真的r错误的
8.MySQL中什么导出表定义和内容?mysql管理员mysql导入「mysql转储mysql导出
9.您将使用以下哪个命令将数据文件加载到表中?mysql导入mysql转储「mysql导出mysql管理员
10.哪个声明表示“字符数据将消耗与声明相同的字节数并且正确填充”?r字符‘瓦尔查尔Char和Varcharr以上都不是
11.对于选择默认字符集以外的字符集,哪一项是正确的声明?,Varchar20字符集;,一Varchar20字符集utf8;、C1/varchar20;「以上都不是
12.在MySQL中,完全限定的表名由什么组成?r仅表名C仅数据库名称r表名后跟数据库名J数据库名称后跟表名称
13.sampledb如果”是数据库且“tbl”是其中的表,则以下哪条MySQL语句有效?从sampledb.member中选择*SELECT*FROM sampledb.member从member.sampledb中选择*从member,sampledb中选择*
4.MySQL中的SQL代表什么?MySQL中的SQL代表结构化查询语言这种语言也用于其他数据库,例如Oracle和Microsoft SQLServer可以使用如下命令从数据库发送请求SELECT titleFROM publicationsWHERE author=J.K.Rowling;Note thatSQL isnot casesensitive.However,it isa goodpractice towritethe SQLkeywords inCAPS andother namesand variablesin asmall case.
5.MySQL数据库包含什么?MySQL数据库包含一个或多个表,每个表都包含记录或行这些行中是包含数据本身的各种列或字段
6.如何与MySQL交互?与MySQL交互的主要方式有以下三种・使用命令行・通过网络界面・通过编程语言
7.什么是MySQL数据库查询?查询是一个特定的请求或问题人们可以查询数据库以获取特定信息并返回一条记录
8.MySQL常用命令有哪些?命令行动改变更改数据库或表备份备份表\C取消输入创造创建数据库删除从表中删除行描述描述表的列降低删除数据库或表命令行动退出ctrl+c退出授予更改用户权限帮助\h,\显示帮助插入插入数据锁锁定表退出\q与退出相同改名重命名表展示列出有关对象的详细信息来源执行一个文件状态\s显示当前状态截短清空一张桌子开锁解锁表更新更新现有记录使用使用数据库
9.如何在MySQL中创建数据库?使用以下命令创建一个名为“books”的新数据库CREATE DATABASEbooks;
10.如何使用MySQL创建表?使用以下命令使用MySQL创建表CREATE TABLEhistory authorVARCHAR128,title VARCHAR128,type VARCHAR16,year CHAR4ENGINE InnoDB;
11.如何将数据插入MySQLINSERT INTO语句用于向MySQL表添加新记录INSERT INTOtable_name columnl,column2,column3,...VALUES valuel,value2,value3,...如果我们想要为表的所有列添加值,则不需要在SQL查询中指定列名但是,值的顺序应与表中列的顺序相同INSERT INTO语法如下INSERT INTOtable_nameVALUES valuel,value2,value3,...;
12.如何从数据库中删除列?您可以使用DROP关键字删除列ALTER TABLEclassics DROPpages;
13.如何在MySQL中创建索引?在MySQL中,有不同的索引类型,例如常规INDEX.PRIMARY KEY或FULLTEXT索引您可以借助索引实现快速搜索索引通过对磁盘上的数据进行排序以便更快地找到结果或告诉SQL引擎在哪里查找数据来提高性能示例向历史表添加索引ALTER TABLEhistory ADDINDEXauthor10;ALTER TABLEhistory ADDINDEXtitle10;ALTER TABLEhistory ADDINDEXcategory5;ALTER TABLEhistory ADDINDEX year;DESCRIBE history;
14.如何从MySQL表中删除数据?在MySQL中,DELETE语句用于从表中删除记录DELETE FROMtablenameWHERE columnname=value_name
15.如何查看MySQL中的数据库?可以使用以下命令查看MySQL服务器主机上的所有数据库:mysql SHOWDATABASES;
16.MySQL中有哪些数值数据类型MySQL具有整数、定点、浮点和位值的数字数据类型,如下表所示数字类型可以有符号或无符号,BIT除外特殊属性可以自动生成连续的整数或浮点列值,这对于需要一系列唯一标识号的应用程序非常有用类型名称意义天音非常小的整数小智小整数中薄荷中型整数INT标准整数BIGINT大整数十进制定点数漂浮单精度浮点数双倍的双精度浮点数少量位域
17.MySQL中有哪些字符串数据类型?类型名称意义字符固定长度的非二进制(字符)字符串VARCHAR变长非二进制字符串二进制固定长度的二进制字符串二进制变长二进制字符串小斑点非常小的BLOB(二进制大对象)BLOB小斑点中型斑点中型BLOB长块大斑点小文本一个非常小的非二进制字符串文本小非二进制字符串中文本中等大小的非二进制字符串长文本大型非二进制字符串枚举枚举;每列值被分配一个枚举成员放一套;每个列值被分配零个或多个集合成员加SQL中的NULL是用于表示缺失值的术语表中的NULL值是字段尢双的中显示为空白的值该值不同于零值或包含空格的字段类型名称意义日期日期值,采用“CCYY-MM-DD”格式时间时间值,格式为hh:mm:ss J约会时间日期和时间值,格式为^CCYY-MM-DD hh:mm:ss”时间戳时间戳值,格式为“CCYY-MM-DD hh:mm:ss年年份值,采用CCYY或YY格式示例从表中选择订单日期为的记录SELECT*FROM OrdersWHERE OrderDate=2018-11-1T
19.MySQL中的BLOB是什么?BLOB是首字母缩写词,代表二进制大对象它用于保存可变数量的数据BLOB有四种类型・小斑点•BLOB•中型斑点•长块BLOB可以保存大量数据例如-文档、图像,甚至视频如果需要,您可以将完整的小说存储为BLOB中的文件
20、MySQL如何添加用户?您可以使用CREATE命令并指定必要的凭据来添加用户例如CREATE USERtestuser,IDENTIFIED BYsample password中级MySQL面试问题
21.什么是MySQL“视图”?在MySQL中,视图由执行特定查询时返回的一组行组成这也称为“虚拟表”视图可以轻松地检索通过别名使查询可用的方式视图的优点是•简单•安全•可维护性
22.如何在MySQL中创建和执行视图?创建视图是通过CREATE VIEW语句完成的举个例子CREATE[OR REPLACE][ALGORITHM={MERGE|TEMPTABLE|UNDEFINED}][DEFINER={user|CURRENT_USER}][SQL SECURITY{DEFINER|INVOKER}]VIEW viewname[column_list]AS select_statement[WITH[CASCADED|LOCAL]CHECK OPTION]
23.什么是MySQL触发器?触发器是响应某些预定义数据库事件而执行的任务,例如在将新行添加到特定表后具体来说,此事件涉及插入、修改或删除表数据,并且该任务可以在任何此类事件之前或紧随其后发生触发器有很多用途,包括•审计跟踪•验证•参照完整性强制执行
24.MySQL中可以有多少个触发器?MySQL数据库允许使用六种触发器插入前插入后更新前更新后删除前删除后
25.什么是MySQL服务器服务器mysqld是MySQL安装的中心;它执行数据库和表的所有操作
26.MySQL客户端和实用程序是什么?有多个MySQL程序可帮助您与服务器进行通信对于管理任务,这里列出了一些最重要的任务•mysql——种交互式程序,使您能够将SQL语句发送到服务器并查看结果您还可以使用mysql执行批处理脚本(包含SQL语句的文本文件)•mysqladmin——个管理程序,用于执行诸如关闭服务器、检查其配置或在服务器似乎运行不正常时监视其状态等任务•mysqldump一用于备份数据库或将数据库复制到另一台服务器的工具•mysqlcheck和myisamchk—帮助您执行表检查、分析和优化以及在表损坏时进行修复的程序mysqlcheck与My ISAM表一起使用,并在某种程度上与其他存储引擎的表一起使用myisamchk仅适用于My ISAM表
27.MySQL中使用的关系类型有哪些?MySQL中的关系分为三类•一对一通常,当两个项目具有一对一关系时,您只需将它们作为列包含在同一个表中•一对多当一个表中的一行链接到另一个表中的多行时,就会发生一对多(或多对一)关系•多对多在多对多关系中,一个表中的许多行链接到另一个表中的许多行要创建此关系,请添加第三个表,其中包含其他每个表中的相同键列高级MySQL面试问题
28.您能解释一下MySQL的逻辑架构吗顶层包含大多数基于网络的客户端/服务器工具或服务器所需的服务,例如连接处理、身份验证、安全性等第二层包含了MySQL的大部分大脑其中包含查询解析、分析、优化、缓存和所有内置功能的代码第三层包含存储引擎,负责存储和检索MySQL中存储的数据■■■■
29.MySQL中的缩放是什么?在MySQL中,扩展能力实际上是处理负载的能力,从几个不同的角度考虑负载是有用的,例如•数据量•用户数•用户活动•相关数据集的大小
30.SQL中的Sharding是什么将大表分解成分布在多个服务器上的较小块(称为分片)的过程称为分片Sharding的优点是,由于分片后的数据库一般比原来的小很多;查询、维护和所有其他任务都快得多
31.MySQL中的事务存储引擎是什么?为了能够使用MySQL的事务功能,您必须使用MySQL的InnoDB存储引擎(这是从
5.5版本开始的默认引擎)如果您不确定您的代码将在哪个版本的MySQL上运行,您可以在创建表时强制使用它,而不是假设InnoDB是默认引擎,如下所示结论
32.结论有多种免费或低成本的数据库管理系统可供选择,例如MySQL、PostgreSQL或SQLiteo。