运维工程师面试题--(5 )(mysql篇)

本文详细介绍了MySQL数据库的相关知识,包括版本、存储引擎、主从复制原理、用户查询、版本历史、权限命令、数据导入导出、备份恢复策略、数据完整性检查、存储类型、主从延迟解决方案、数据库优化实践、数据删除命令、关系型与NoSQL数据库对比、安全措施、MySQL与Oracle区别、慢查询日志处理、在线清理binlog方法、binlog工作模式、误操作恢复、主从复制故障监控及恢复、读写分离工具、从服务器宕机恢复、主服务器宕机恢复、常见数据库故障案例、主从复制延迟原因及解决方案、MySQL日志类型、备份类型解析以及高可用方案等。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

3.你们公司mysql数据库是什么版本的,存储引擎是什么?
我们公司数据库呢是一个5.7版本的数据库,然后数据库的存储引擎呢使用的是InnoDB,是因为这样得,InnoDB它具有一个提交、回滚和崩溃恢复能力的安全事务,相比较于MYISAM,效率要差一点,但是呢,在业务当中呢,我们都是先要肯定安全性的,所以呢,我们用的是InnoDB;
4.说一下mysql主从的原理
Mysql主从的原理呢;是这个样的 首先呢,master服务器将sql数据库改写的记录,放入bin-log日志当中,slave通过IO线程获取master上边的这个改变记录,同时呢IO线程启动dump线程,发送二进制日志,保存到salve上边的中继日志上。然后sql线程读取二进制日志,从而达到主从一致的目的。
5.如何查看数据库中有哪些用户
select user,host from mysql.user;
6.mysql的存储引擎有哪些
InnoDB存储引擎 MyISAM存储引擎
7.mysql你知道那几个版本
了解:
版本号:
MySQL 5.7 是最新开发的稳定(GA)发布系列,是将执行新功能的系列,目前已经可以正常使用。
MySQL 5.6 是比较稳定的(GA)发布系列,只针对漏洞修复重新发布,不增加会影响稳定性的新功能。
MySQL 5.1 是一个稳定的(产品质量)发布系列,只针对严重漏洞修复和安全修复重新发布,不增加影响该系列稳定性的重要功能。
注意了解:对于 MySQL 4.1 等低于 5.0 的老版本,官方将不再提供支持

8.使用什么命令给用户授权
grant select, insert, update, delete on testdb.* to common_user@’%’;

10.如何导入数据库
我们是使用mysql命令进行导入的,有时也使用source
11.如何备份数据库
我们公司使用的是一周一全备、每天一增备,全备用mysqld

### 运维工程师常见面试题及答案 #### 一、系统调优 系统调优主要包括内核参数优化和应用优化两个方面[^2]。以下是具体的例子: - **内核参数优化** 调整 Linux 的 TCP 参数以提高网络性能,例如 `net.ipv4.tcp_tw_reuse` 和 `net.ipv4.tcp_fin_timeout` 等。这些参数可以通过 `/etc/sysctl.conf` 文件配置,并通过 `sysctl -p` 生效。 - **应用优化** 对于 MySQL 数据库,调整缓冲区大小(如 `innodb_buffer_pool_size`)、连接数限制(如 `max_connections`),以及查询缓存策略(如 `query_cache_type`)。 ```bash # 修改 sysctl 配置文件 echo "net.ipv4.tcp_tw_reuse = 1" >> /etc/sysctl.conf sysctl -p ``` --- #### 二、故障排查 在处理故障时,常见的问题包括但不限于网络中断、服务器宕机、数据库异常等[^1]。以下是一些典型的解决方案: - **网络故障** 使用 `ping` 测试连通性,利用 `traceroute` 定位路径中的瓶颈节点,借助 `tcpdump` 或 `wireshark` 抓包分析流量。 - **服务器宕机** 查看系统日志 (`/var/log/messages`) 和应用程序日志,确认是否有资源耗尽的情况(CPU、内存、磁盘 I/O)。必要时重启服务或增加硬件资源。 - **数据库故障** 备份数据后尝试恢复,使用 `mysqldump` 导出表结构和数据,再通过 `mysql` 命令导入新环境。 ```bash # 导出数据库 mysqldump -u root -p database_name > dump.sql # 导入数据库 mysql -u root -p database_name < dump.sql ``` --- #### 三、运维工具与脚本编写 运维工作中经常需要用到各种命令和脚本来完成日常任务[^3]。下面列举几个常用场景及其对应的操作命令: - **列出指定目录下所有子目录** ```bash ls /test -l | grep "^d" ``` - **设置默认权限** `umask 022` 表示新建目录的默认权限为 `755`,文件为 `644`[^4]。 - **备份并压缩目录** 排除特定子目录的情况下打包整个目标目录: ```bash tar zcvf backup.tar.gz --exclude /test/a /test ``` - **查看进程打开的文件** 列出名为 `test` 的进程正在使用的文件: ```bash lsof -c test ``` - **提取 RPM 包内容** 显示某个 `.rpm` 文件内部包含的内容列表: ```bash rpm -qpl test.rpm ``` - **创建符号链接** 将源目录映射为目标位置的一个快捷方式: ```bash ln -s /test/a /test/b ``` - **定义环境变量** 设置全局可用的自定义变量并通过 `export` 让其即时生效: ```bash export test=123 ``` - **管理服务开机启动项** 添加或移除某项服务至系统的引导加载序列中去: ```bash systemctl enable test.service ``` --- #### 四、团队协作与角色划分 游戏运维领域通常细分为三个方向——开发运维、应用运维和系统运维[^3]。每种岗位职责不同但又相互配合: - **开发运维** 主要负责构建自动化部署流水线及相关平台; - **应用运维** 关注具体业务逻辑实现后的持续运营支持活动; - **系统运维** 提供底层架构支撑保障整体稳定性。 --- ###
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值