MySQL面试题与答案

MySQL面试题与答案

MySQL面试题

面试题汇总

  1. 一张表,里面有ID自增主键,当insert了17条记录之后,删除了第15,16,17条记录,再把Mysql重启,再insert一条记录,这条记录的ID是18还是15 ?
    答: 18

  2. Mysql的技术特点是什么?
    答: 略

  3. Heap表是什么?
    答: 用于临时高速存储, 存在于内存中

  4. Mysql服务器默认端口是什么?
    答: 3306

  5. 与Oracle相比,Mysql有什么优势?
    答: 主要是免费

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

  7. 区分CHAR_LENGTH和LENGTH?
    答: CHAR_LENGTH是字符数,而LENGTH是字节数。

  8. 请简洁描述Mysql中InnoDB支持的四种事务隔离级别名称,以及逐级之间的区别?
    答:
    read uncommited :读到未提交数据
    read committed:脏读,不可重复读
    repeatable read:可重读
    serializable :串行事物

  9. 在Mysql中ENUM的用法是什么?
    答: ENUM是一个字符串对象,用于指定一组预定义的值

  10. 如何定义REGEXP?
    REGEXP是模式匹配,其中匹配模式在搜索值的任何位置。

  11. CHAR和VARCHAR的区别?
    CHAR是一种固定长度的类型,适合用在身份证号码、手机号码等定。,VARCHAR则是一种可变长度的类型。适合用在长度可变的属性。 text不设置长度, 当不知道属性的最大长度时,适合用text。

  12. 列的字符串类型可以是什么?
    SET
    BLOB
    ENUM
    CHAR
    TEXT
    VARCHAR

  13. 如何获取当前的Mysql版本?
    select version();

  14. myisamchk是用来做什么的?
    它用来压缩MyISAM表,这减少了磁盘或内存使用。

  15. MYSQL数据库服务器性能分析的方法命令有哪些?
    在这里插入图片描述

  16. Mysql中有哪几种锁?
    MyISAM支持表锁,InnoDB支持表锁和行锁,默认为行锁

  17. MYSQL数据表在什么情况下容易损坏?
    服务器突然断电导致数据文件损坏。
    强制关机,没有先关闭mysql 服务等。

  18. ACL
    访问控制列表

  19. Mysql表中允许有多少类型TRIGGERS?
    BEFORE INSERT
    AFTER INSERT
    BEFORE UPDATE
    AFTER UPDATE
    BEFORE DELETE
    AFTER DELETE

  20. 可以使用多少列创建索引?
    任何标准表最多可以创建16个索引列。

  21. NOW()和CURRENT_DATE()有什么区别?
    NOW()命令用于显示当前年份,月份,日期,小时,分钟和秒。
    CURRENT_DATE()仅显示当前年份,月份和日期。

  22. 一些预期可能用到的sql语句
    //如果表存在,则删除
    DROP TABLE IF EXISTS abc;
    //复制整张表xyz为heap表abc(包含所有数据)
    CREATE TABLE abc type=heap select * from xyz;
    //添加主键id
    ALTER TABLE table_name ADD PRIMARY KEY ( column )
    //添加唯一索引
    ALTER TABLE table_name ADD UNIQUE ( column )
    //添加普通索引
    ALTER TABLE 表名 ADD INDEX 索引名( 字段名 )
    //添加全文索引
    ALTER TABLE table_name ADD FULLTEXT ( column)
    //添加多列索引
    ALTER TABLE table_name ADD INDEX index_name ( column1, column2, column3 )

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值