当前位置: 首页 > news >正文

[Mysql数据库] 知识点总结3

24. innodb_data_file_path 和 innodb_file_per_table 这两个参数各自的作用是什么?

答:innodb_data_file_path 选项配置磁盘上 InnoDB 系统表空间文件的大小和物理位置。

       innodb_file_per_table 选项指定 MySQL 是在系统表空间中还是在单独的 .ibd 文件中 存储新表数据和索引

25. 请说明重做(redo)和还原(undo)各自在 MySQL 数据库中的作用。

答:redo 记录了数据库的更改信息,用以优化非同步的数据库写入以及支持实例恢复。

       undo 是数据块修改之前的原始副本,用于支持读取一致性查询和回退。

26. 请比较 MySQL 全局内存和会话内存的不同点。

答:全局内存是在服务器启动时分配,由服务器进程及所有线程共享。

       会话内存是在用户会话线程启动时分配,在会话结束时释放的,用于处理查询结果。

27. 要显示已配置的服务器选项可以有哪几种方法,分别举例说明。

答:在 mysql 提示符执行 SHOW GLOBAL VARIABLES;

       在命令行执行 mysqladmin variables;

       在命令行执行 mysqld --verbose --help。

28. 给出在 Linux 系统上的标准选项文件的名称和保存的位置。

答:/etc/my.cnf。

29. 请说明选项文件中的 [client] 和 [server] 组的适用范围。

答:[client]:适用于所有客户端程序的选项,通常用于指定所有客户端通用的连接参数。

       [server]:适用于所有服务器程序或脚本的选项。

30. 如果在多个配置文件中指定了一个相同的选项值,或者在同一配置文件内的多个组中指定了相同的选项值,系统如何处理?

答:如果在多个配置文件中指定了一个选项值,则后面文件中的选项会覆盖前面文件中的选项。

       如果在同一文件内的多个组中指定了一个选项值,则文件中较晚的选项优先。

31. 请说明 --no-defaults 命令行长选项的作用。

答:服务器启动时不读取任何选项文件,直接从命令行获取参数。

32. MySQL 维护的变量从作用域分为 GLOBAL 和 SESSION,从功能上分为动态和持久,你是如何理解的。

答:在服务器运行期间,所有配置的选项均称为系统变量,在运行时可以修改的变量称为动态变量。 MySQL 维护两个包含系统变量的作用域,分别是 GLOBAL 和 SESSION。

        - GLOBAL 变量影响服务器的整体运行,用 SET GLOBAL variable_name 或 SET @@global.variable_name 更改

        - SESSION 变量影响单个客户端连接,用 SET SESSION variable_name 或 SET @@session.variable_name 更改

33. 要查看系统变量,有哪几种常用的办法,举例说明。

答:- 在 mysql 提示符使用 SHOW [GLOBAL|SESSION] VARIABLES;查看,如:

        mysql> SHOW VARIABLES LIKE 'read_only';

       - 使用 Performance Schema 查看变量,global_variables 和 session_variables 表 包含全局变量和当前会话变量,variables_by_thread 表包含所有活动线程的会话变量。如:

        mysql> SELECT VARIABLE_VALUE FROM variables_by_thread

                 > WHERE THREAD_ID=27 AND VARIABLE_NAME='sort_buffer_size';

34. MySQL 中如何持久化修改一个全局变量。

答:使用 SET PERSIST variable_name = value 可以在服务器重启时维护修改的全局变量值。 持久更改后的变量值在 mysqld-auto.cnf 文件中以 JSON 格式存储,该文件在数据目录下。

35. 在同一台服务器上启动多个 mysqld 实例时,必须要隔离的对象有哪些?

答:数据目录、连接层参数、日志和 PID 文件、InnoDB 表空间和日志文件。

36. MySQL 服务器都提供了哪几种类型的日志文件?说明每种日志的用途。

答:错误日志(Error log):与启动、关闭和异常情况有关的诊断信息。

       常规查询日志(General query log):服务器从客户端收到的所有语句。

       慢速查询日志(Slow query log):需要很长时间执行的查询。

       二进制日志(Binary log):修改数据的信息。

       审计日志(Audit log):企业版基于策略的审计。

37. MySQL 8.0 默认启用哪两种日志记录?

答:MySQL 8.0 默认启用错误日志和二进制日志。

38. 请说明常规查询日志和慢速查询日志在记录的内容上有何不同。

答:常规查询日志记录服务器从客户端收到的所有语句,包括连接信息和接收到的语句的详细信息。

       慢速查询日志只记录执行时间超过了 long_query_time 指定阈值的语句,用于性能优化目的。

39. 如何配置才能将慢速查询日志和常规查询日志在文件和表里同时保存?

答:将 log_output 服务器选项配置为 FILE,TABLE 即可同时在文件和表同时记录。

       文件默认在数据目录,分别是 hostname-slow.log 和 hostname.log

       表在 mysql 数据库,分别是 slow_log 表和 general_log

http://www.xdnf.cn/news/1372483.html

相关文章:

  • 深度学习:卷积神经网络(CNN)
  • Docker中如何记录非交互式连接ssh用户操作的所有命令记录?
  • QT(QTableWidget)
  • 机器学习:前篇
  • Linux系统的网络管理(二)
  • SELinux相关介绍
  • 质押、ETF、财库三箭齐发:以太坊价值逻辑的重构与演进
  • [灵动微电子 霍尔FOC MM32BIN560C]从引脚到应用
  • Ubuntu操作系统下使用mysql、mongodb、redis
  • 系统架构设计师-【2025上半年论文题目分享】
  • 探寻跨语言统一真理及其对NLP的未来启示
  • Agent实战教程:LangGraph关于智能体的架构模式与核心概念
  • 知行——同为科技24周年庆典
  • 【软件测试面试】全网最全,自动化测试面试题总结大全(付答案)
  • 二维费用背包 分组背包
  • Git命令
  • 机器学习每日一题000-矩阵和向量的乘法python实现
  • 在Excel和WPS表格中输入分数的两种方法
  • Linux正则表达式
  • shiro进行解密
  • 如何才能使RISC V架构成为机器学习的核心
  • 【Modbus-TCP】linux为主机—PC为从机通信
  • Git工具
  • 【44页PPT】极简架构MES系统解决方案介绍(附下载方式)
  • 阿里云 ECS 可观测性最佳实践
  • 简易shell
  • 【ElasticSearch】客户端选择
  • 力扣100+补充大完结
  • Linux命令详解+示例(炫彩超全)
  • 在Godot中为您的游戏添加并控制游戏角色的完整技术指南