综合面试题

1、 一张表里面有ID自增主键,当insert了17条记录之后,删除了第15,16,17条记录,再把mysql重启,在insert一条记录,这条记录的ID是18还是15?
   (1)如果表的类型是MyISAM,那么是18。  因为MyISAM表会把自增主键的最大ID记录到数据文件里,重启MySQL自增主键的最大ID也不会丢失。 
(2)如果表的类型是InnoDB,那么是15。  InnoDB表只是把自增主键的最大ID记录到内存中,所以重启数据库或者是对表进行OPTIMIZE操作,都会导致最大ID丢失。

2、mysql的技术特点是什么?
   Mysql数据库软件是一个客户端或服务器系统,其中包括:支持各种客户端程序和库的多线程SQL服务器、不同的后端、广泛的应用程序编程接口和管理工具。

3、
Heap表是什么?

HEAP表存在于内存中,用于临时高速存储。
 BLOB或TEXT字段是不允许的
 只能使用比较运算符=,<,>,=>,= <
HEAP表不支持AUTO_INCREMENT
 索引不可为NULL

4、
mysql服务器默认端口是什么?
   3306

5、
与Oracle相比,mysql有什么优势?
  Mysql是开源软件,随时可用,无需付费。
 Mysql是便携式的
带有命令提示符的GUI。
使用Mysql查询浏览器支持管理

6、
如何区分FLOAT和DOUBLE?
  以下是FLOAT和DOUBLE的区别:
浮点数以8位精度存储在FLOAT中,并且有四个字节。
浮点数存储在DOUBLE中,精度为18位,有八个字节。

7、
CHAR和VARCHAR的区别?
  CHAR和VARCHAR类型在存储和检索方面有所不同
 CHAR列长度固定为创建表时声明的长度,长度值范围是1到255
当CHAR值被存储时,它们被用空格填充到特定长度,检索CHAR值时需删除尾随空格

8、
列的字符串类型可以是什么?
  字符串类型是:
  SET
 BLOB
 ENUM
CHAR
 TEXT
VARCHAR

9、
如何获取当前的mysql版本?
  SELECT VERSION();用于获取当前Mysql的版本。

10、
mysql驱动程序是什么?
  以下是Mysql中可用的驱动程序:
  PHP驱动程序
         JDBC驱动程序
         ODBC驱动程序
         CWRAPPER
         PYTHON驱动程序
         PERL驱动程序
         RUBY驱动程序
        CAP11PHP驱动程序
        Ado.net5.mxj
11、
主键和候选键有什么区别?
  表格的每一行都由主键唯一标识,一个表只有一个主键。
主键也是候选键。按照惯例,候选键可以被指定为主键,并且可以用于任何外键引用

12、
mysql数据库服务器性能分析的方法命令有哪些?
    Show status
  •一些值得监控的变量值:
  •Bytes_received和Bytes_sent
  •和服务器之间来往的流量。
  •Com_*服务器正在执行的命令。
  •Created_*在查询执行期限间创建的临时表和文件。
  •Handler_*存储引擎操作。
  •Select_*不同类型的联接执行计划。
  •Sort_*几种排序信息。
  •Show session status like ‘Select’;
  •Show profiles
  •SET profiling=1;
  •Show profiles\G
  •Show profile;

13、
如何控制HEAP表的最大尺寸?
  Heal表的大小可通过称为max_heap_table_size的Mysql配置变量来控制。

14、
怎样才能找出最后一次插入时分配了哪个自动增量?
   LAST_INSERT_ID将返回由Auto_increment分配的最后一个值,并且不需要指定表名称。

15、
mysql查询是否区分大小写?
不区分
16、
InnoDB是什么?
   lnnoDB是一个由Oracle公司开发的Innobase Oy事务安全存储引擎。
17、
如何输入字符为十六进制数字?
  如果想输入字符为十六进制数字,可以输入带有单引号的十六进制数字和前缀(X),或者只用(Ox)前缀输入十六进制数字。
如果表达式上下文是字符串,则十六进制数字串将自动转换为字符串

18、
mysql表中允许有多少个TRIGGERS?
  在Mysql表中允许有六个触发器,如下:
BEFORE INSERT
 AFTER INSERT
 BEFORE UPDATE
 AFTER UPDATE
 BEFORE DELETE and
 AFTER DELETE

19、
mysql中有哪几种锁?
  MyISAM支持表锁,InnoDB支持表锁和行锁,默认为行锁
 表级锁:开销小,加锁快,不会出现死锁。锁定粒度大,发生锁冲突的概率最高,并发量最低
行级锁:开销大,加锁慢,会出现死锁。锁力度小,发生锁冲突的概率小,并发度最高
 
 

 

posted @ 2022-04-06 10:59  大熊童鞋  阅读(95)  评论(0编辑  收藏  举报