文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

MySQL数据库中的键和索引的概念

2023-06-02 06:50

关注

本篇内容主要讲解“MySQL数据库中的键和索引的概念”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“MySQL数据库中的键和索引的概念”吧!

1.键的概念
# id为主键  name是唯一键create table Mark(id int not null primary key ,name varchar(250) unique key);create table Mark(id int, name varchar(250), primary key(id), unique key(name));
create table students_to_teacher(to_id int, stu_id int, tea_id int, foreign key(stu_id) references students(id), foreign key(tea_id) references teacher(id));
2.索引的概念
3.索引类型
# 创建普通索引create index 索引名称 on 表名(列名)# 删除普通索引drop index 索引名称 on 表名# 查看索引show index from 索引名
# 创建唯一索引create unique index 索引名称 on 表名(列名)# 删除唯一索引drop unique  index 索引名称 on 表名
4.引优化策略
5.Innodb 存储引擎
-rw-rw---- 1 mysql mysql    65 8月  27 14:31 db.opt    -rw-rw---- 1 mysql mysql  8614 8月  27 14:31 students.frm    -rw-rw---- 1 mysql mysql 98304 8月  27 14:31 students.ibd    db.opt文件:主要用来存储当前数据库的默认字符集和字符校验规则    students.frm文件:存放表结构的    students.ibd文件:存储了当前表的数据和相关的索引数据    因此,表数据和表结构分离, 每个表单独使用一个表文件来存储数据和索引
6.MyISAM 存储引擎
-rw-rw---- 1 mysql mysql  10630 8月  27 13:12 user.frm-rw-rw---- 1 mysql mysql    504 8月  27 13:15 user.MYD-rw-rw---- 1 mysql mysql   2048 8月  27 14:30 user.MYIuser.frm:为表结构user.MYD:为表数据user.MYI:为表索引
7.MySQL的并发访问控制
# lock tables 方式施加锁lock tables 表名称 read   # 读锁lock tables 表名称 write  # 写锁# 给表解锁    unlock tables;    # flush tables 方式施加锁flush tables 表名称 with read lock;   #读锁flush tables 表名称 with write lock;  # 写锁
8.MySQL事务机制

事物日志:

ACID机制:

9.MySQL 查询缓存机制
1.query_cache_min_res_unit:查询缓存分配内存块的最小的分配单位,较小的值较少内存浪费,但是会导致更加平凡的内存分配操作 ,较大的值会导致浪费2.query_cache_limit:能够缓存的最大查询结果,对有较大结果的查询语句,建议在select中使用SQL_NO_CACHE3.query_cache_size:查询缓存总共可用的内存空间,单位是字节,必须是1024整数倍4.query_cache_type:ON , OFF , DEMAND5.query_cache_wlock_invalidate:如果某个数据表被其他的连接锁定,是否仍然可以从查询缓存中返回结果,默认值为off,表示可以返回数据,on为不允许
缓存命中率计算公式: Qcache_hits / (Qcache_hits+Com_select)

MySQL数据库中的键和索引的概念

10.MySQL 日志分类
general_log = {ON|OFF}  # 是否启用查询日志general_log_file = /logs/mysql/general_log  # 当log_output为FILE类型时,日志信息的记录位置;log_output = {TABLE|FILE|NONE} log_output = TABLE,FILE
1.执行时长超出指定时长的操作 show global variables like 'long_query_time'; 查看指定的时长set global long_query_time = 自定义时长2.slow_query_log = {ON|OFF}:是否启用慢查询日志set global slow_query_log = ON3.slow_query_log_file = mariadb1-slow.log# 过滤条件4.log_slow_filter=admin,filesort,filesort_on_disk,full_join,full_scan,query_cache,query_cache_miss,tmp_table,tmp_table_on_disk 5.log_slow_rate_limit = 1 指定记录速率6.log_slow_verbosity = 指定内容级别
# 错误日志信息产生的来源    mysqld启动和关闭过程中输出的信息;    mysqld运行中产生的错误信息;    event scheduler运行一个event时产生的日志信息    在主从复制架构中的从服务器上启动从服务器线程时产生的日志信息;# 如何开启错误日志    log_error = /path/to/somefile    log_warnings = {ON|OFF}:是否记录警告信息于错误日志中;
# 日志记录的格式分类    基于“SQL语句”记录: statement    基于“行”记录:row    “混合模式” :mixed,系统自行判断# 二进制日志文件的构成    日志文件:mysql-bin.文件序号         例如: mysql-bin.000001    索引文件:mysql-bin.index         例如:mysql-bin.index
11.MySQL 备份策略的注意点
1.站在数据集是否完整的角度上    完全备份,部分备份 2.站在完全备份的基础上    增量备份,差异备份 3.站在是否影响数据集读写的角度上    热备份:在线备份,读写操作不受影响;    温备份:在线备份,读操作可继续进行,但写操作不允许    冷备份:离线备份,数据库服务器离线,备份期间不能为业务提供读写服务    MyISAM存储引擎: 能够实现温备    InnoDB存储引擎: 能够实现热备4.站在数据存储角度上    物理备份:直接复制数据文件进行的备份    逻辑备份:从数据库中“导出”操作数据的SQL语句,再执行,实现备份
12.备份策略需要考虑的因素
13.数据库备份具体解决方案
14.备份工具介绍
15.MySQL 半同步复制模型

到此,相信大家对“MySQL数据库中的键和索引的概念”有了更深的了解,不妨来实际操作一番吧!这里是编程网网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-数据库
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯