- 求职面试导航
- [大数据测试]ETL测试工具和ETL面试常见的问题及答案
- 面试官考的MySQL 原理
- MySQL8.0版本升级建议及各种场景的操作
- 面试遇到不会的问题,该怎么巧妙应对?
- 面试一题:如何通过sql方式将数据库表行转列?
- 搞透这 20 道,SQL面试就没问题了
- SQL面试复习的高级部分
- SQL面试复习-基础部分
- SQL面试复习-高级部分
- docker运行mysql并数据持久化
- 学了半年SQL,她从咨询公司跳槽去当商业分析师
- 【数据分析岗】面试框架梳理
- MYSQL另类利用方式
- SQL练习题和答案(MySQL版)精选
- Mysql和Mongodb面试题
- 在Centos上如何修改密码
- 数分面试中应该知道的5个SQL日期函数
- 外企一道 SQL 面试题,难倒494人!
- mysql 查询优化执行过程
- 网络安全--SQL注入介绍
- 【案例实操】数分面试必知必会的SQL窗口函数
- Mysql之事务篇
- 【案例实操】面试必知必会的SQL窗口函数
- mysql主从切换
- mysql随手记-我没有被面试官“锁”住
- MySQL中MGR中SECONDARY节点磁盘满,导致mysqld进程被OOM Killed
- 测试开发必备:SQL 语法速成手册,yyds!
- 面试无数次总结出MySQL3万字面试题
- mysql命令 详细整理,web开发教学
- MYSQL中锁的各种模式与类型
- MySQL连接控制插件介绍
- SQL笔试题深析
- MySQL 定时备份数据库(基本全)
- 笔试中会碰到书写sql语句的题目(面试题)
- 高频数据库 MySQL 面试题
- 如何解决MySQL数据字典提示1146不存在的问题
- 【数据分析岗】面试高频类型——大数据技能
- MySQL连表查询
- 大厂招聘必问面试题-数据库
- MySQL主从之外,你又多了一项选择,Galera
- SQL测试必备命令和语法教程在这儿!
- mysql死锁查看具体行
- CentOS 7 rpm安装MySQL 5.6
- SQL面试题,快问快答!
- MySql数据库连接超时处理
- 干货!常见的SQL面试题:经典50例!
- 面试打脸TOP 1!简历写精通SQL,你真的是精通吗?
- SQL中的集合
- 可能会遇到的数据库(MySQL)面试题(含答案)
- mysql 左链接 left join 条件写在where 后面与 on后面的区别
- 为何SQL很受名企欢迎?
- mysql插入中文报错的几种解决方法
- MySQL 面试题
- SQL语句中exists和in的区别
- MySQL 高频面试题,最常问!
- MySQL(六)—— 分组函数(多行处理函数)
- Mysql锁机制面试点总结
- MySQL:介于普通读和锁定读的加锁方式(1),MySQL最全整理
- MySQL 高频面试题!
- 面试 (MySQL 索引为啥要选择 B+ 树)
- 设置mysql免密码登录, mysql设置密码
- mysql面试题
- MySQL基础篇之子查询概述
- 记录第一次面试
- MySQL5.7半同步复制
- 面试总结,MySQL 中 int (10) 和 int (11) 到底有什么区别?
- MySQL抓包工具:MySQL Sniffer
- Mysql,我为了面试准备的
- 老板:让你添加一个mysql用户并给予权限这么费劲吗?
- Mysql面试题精选
- MySQL 数据库基础知识点复习
- Java面试,面试题
- 面试官:了解数据库连接池吗?
- MySQL主从复制那些事
- 【Mysql】初识MySQL
- mysql5.7 innodb数据字典
- mysql集群搭建教程-mysql+windows篇
- Mysql数据库导入导出
- 面试题:内存型数据库Redis
- MySQL面试之灵魂拷问
- Mysql数据库日志
- MySQL的底层原理
- MySQL 8.0的新特性-克隆插件
- 面试被问 | 数据库连接池为什么要用threadlocal呢?
- Java面试之MySQL
- 浅谈 MySQL 的临时表和临时文件
- MySQL为什么varchar字段用数字查无法命中索引,而int字段用字符串查却能命中?
- mysql面试之ORM
- MySQL 那些常见的错误设计规范
- 面试超过1000人的资深HR亲诉:如何有效回答数据分析面试问题?
- MySQL 十大常用字符串函数
- 面试必备:聊聊什么是数据库范式?
- 如何将tableau与mysql连接起来
- 如何有效回答数据分析面试问题?
- MySQL一条SQL语句执行过程,讲得通俗易懂!
- BAT数据分析面试过程详解
- MySQL 体系架构简介
- MySQL面试题:数据库读写分离
- MySQL自动删除历史数据
- 数据库面试题-Oracle部分
- Mysql各种锁机制(全面)
- MySQL最新面试题题库
- MySQL replace into行为解析
- 橙心优选-数据仓库高级工程师面试
- MySQL 开源工具集合
- 数据工程师面试常见题目汇总
- MySQL外键约束
- 蚂蚁金服:数据仓库高级工程师面试
- 老板:让你添加一个mysql用户并给予权限这么费劲吗?
- 数据分析岗位跳槽面试需要做什么准备
- 如何查看Mysql执行计划
- MySQL面试:数据库自增 ID 用完了会发生什么?
- linux系统下的MySQL 安装及性能测试
- Mysql高级优化(二)
- MySQL架构设计
- 面试!资深数据分析RoadMap
- max_allowed_packet引起MySQL迁移丢失数据的问题
- 美团面试题:MySql批量插入时,如何不插入重复的数据?
- SQL面试:如何快速定位消耗CPU最高的sql语句
- MySQL性能提升40%的AHI功能,你知道么?
- Mysql高级优化(一)
- 数据科学家V.S数据分析师面试全对比
- sql面试:sql中的行转列和列转行
- MySQL面试-基础篇(一)
- 两道常见的MySQL面试题
- MySQL面试-日志录入格式
- 数据分析师也有帮派!四大门派鼎足,你属于哪一派?
- 产品经理必知必会的SQL
- MySQL数据类型-枚举
- MySQL8.0版本选型建议
- 35张图带你 MySQL 调优
- InnoDB从内分析之Row(一)
- 百万级数据库优化
- 数据库常见面试题(三)-缓存与数据库的一致性
- MySQL面试题:MySQL误删数据怎么办?
- 后台JAVA面试-数据库部分(三)
- 什么职位需要使用 SQL_数据处理领域_详解SQL_SQL与NoSQL_什么是NewSQL 数据库
- 后台JAVA面试-数据库部分(二)
- 后台JAVA面试-数据库部分(一)
- 由一个go中出现的异常引出对php与go中操作sql的一些分析
- MySQL事务处理特性的实现原理
- 数据库面试题目集锦
- 如何解决String.hashCode,移植到mysql中时遇到的int溢出问题
- MySQL锁都分不清,怎么面试进大厂?
- Mysql全局锁和表锁
- Innodb存储引擎
- 数据库常见面试题(二)-MySQL分库分表
- MySQL 使用 SQL 语句快速复制表和数据
- 数据库常见面试题 (一)-索引
- MySQL监控第03期:Zabbix 监控 MySQL
- MySQL 监控 第02期:PMM 监控 MySQL
- MySQL 监控 第01期:Prometheus+Grafana 监控 MySQL
- 数据库层面问题解决思路
- MySQL冷备份过程
- innodb 存储引擎下面的MySQL事务
- 分页场景慢?MySQL的锅!
- Mysql触发器
- MySQL 优化笔记
- MYSQL8初始化设置
- MySQL 的共享锁和排它锁以及自动提交
- Ubuntu安装mysql
- 收集一些MySQL常见用法和技巧
- MySQL 慢查询
- MySQL 判断表和数据库是否存在
- 将纯真 IP 数据库导入 MySQL 数据中
- 如何使用 PHP 以发送邮件的方式自动定时备份 MySQL 数据库表数据
- 解决 Navicat 出错 1130-host . is not allowed to connect to this MySql server
- MySQL 服务器无法存 Emoji 表情的解决方案
- CentOS 6.5 部署 Apache-2.4.10 + PHP-5.6.3 + MySQL-5.1.73 + Magento-1.9.1.0
- MySQL 单机双机主从同步复制备份配置
- node-mysql-promise 基于 Node.js 异步操作 MySQL 数据库组件
- MYSQL 常用命令大全整理
- mysqldump 备份恢复数据库
- 数据库和SQL简介
- Python操作MySQL
- mac 安装mysql_mysql启动数据库命令_MySQL Workbench
- 【后台开发面试题】如何分库分表_什么是分库分表_mysql分库分表 中间件_分表逻辑
- 【数据库 的面试】redis缓存一致性怎么保证?redis mysql 缓存方案_mysql缓存机制_redis同步数据到mysql
- 【数据库 面试题】mysql缓冲池_Buffer Pool_LRU缓存淘汰算法_双向链表和单链表的区别
- 【腾讯面试 mysql题目】数据库面试题_mysql处理能力_连接池配置_数据库面经
- 【数据库查询命令】mysql查询当天、本周、上月的数据
- debian下安装mysql
- 还原工具mysqldump_mysqldump备份多个数据库_执行还原操作_导出表
- Centos7 yum 方式安装 Mysql_centos安装mysql客户端
- docker安装mysql5.7_docker部署mysql_docker创建mysql容器
- 数据库的面试题集_MySQL 面试题_MySQL面试_MySQL 的题集
- MySQL的学习资源:github,官方资料,书籍,大神博客,优秀公众号,学习网站,专栏,文章
- mysql知识:数据库设计,mysql存储引擎,mysql索引优化,mysql错误日志,mysql复制
- 数据库事务总结
MySQL 数据库基础知识点复习
redis 或者 memcache 缓存减少数据库压力数据库安全
- 外网不可访问(3306端口)
- 禁止弱口令
- 用户管理权限,给每个数据库分配单独的账号,甚至根据实际情况,设置账号的可读可写权限
- 禁用root权限操作
- ip白名单限制其它ip访问
- 数据库定时备份
数据库的基本配置
- 最大连接数
- innodb_lock_wait_timeout 锁超时时间(秒)
- tmp_table_size 临时表数量
数据库存储引擎,innodb与myisam 的取舍三范式,每列的原子性,每行的唯一性,数据的去冗余,以及反三范式数据库字段类型取舍,sql语句的优化基本的索引,主键、唯一索引、普通索引、组合索引、最左原则eplain 或者 desc 执行计划,查看并分析具体sql语句中索引的使用情况设置慢查询参数,开启慢查询日志,分析执行慢的sql语句进行优化profile 查看具体执行时间,找出执行慢的sql语句并进行优化事务的四大特性:
- 原子性,要么一起成功,要么一起回滚
- 一致性,事务执行前后,数据都是合法状态
- 隔离性,默认隔离级别,可重复读
- 永久性,执行成功,则保存到了硬盘中
事务隔离性带来的问题,脏读、不可重复读、幻读
- 脏读:事务A读取了事务B更新的数据,然后B回滚操作,那么A读取到的数据是脏数据
- 不可重复读:事务 A 多次读取同一数据,事务 B 在事务A多次读取的过程中,对数据作了更新并提交,导致事务A多次读取同一数据时,结果 不一致。
- 幻读:系统管理员A将数据库中所有学生的成绩从具体分数改为ABCDE等级,但是系统管理员B就在这个时候插入了一条具体分数的记录,当系统管理员A改结束后发现还有一条记录没有改过来,就好像发生了幻觉一样,这就叫幻读。
- 小结:不可重复读的和幻读很容易混淆,不可重复读侧重于修改,幻读侧重于新增或删除。解决不可重复读的问题只需锁住满足条件的行,解决幻读需要锁表
隔离级别
- 读未提交,脏读:是,不可重复读:是,幻读:是
- 不可重复读,脏读:否,不可重复读:是,幻读:是
- 可重复读,脏读:否,不可重复读:否,幻读:是,mysql默认隔离级别,
- 串行化,,脏读:否,不可重复读:否,幻读:否
锁,表锁、行锁、排它锁、意向锁、循环锁(死锁)、读锁(共享锁)、写锁(排它锁),自动提交、手动开启共享锁、手动开启排它锁、等锁概念查询缓存(查询缓存的弊端),分析查询缓存的使用情况和命中率对于数据量较大的数据比如数据量超千万,进行逻辑分区,逻辑分区可以根据
- list 条件分区,根据“字段的内容值”是否在某个“列表”中进行分区,通过预定义的列表的值来对数据进行分割
- range 范围分区,根据“字段内容的值”是否在 某个范围进行分区,通过预定义的范围值来对数据进行分割
- hash 哈希分区,只能针对整数进行,允许通过对表的一个或多个列的Hash Key进行计算,最后通过这个Hash码不同数值对应的数据区域进行分区
- key 分区,KEY分区支持除text和BLOB之外的所有数据类型的分区
进行物理分表(水平分表),比如用户日志,可以根据每月一张表来进行物理分表,通过应用程序进行控制进行垂直分表,把冷热字段分开来设计,减少数据库的资源开销主从复制,读写分离,根据主数据库的二进制日志去同步数据到从数据库。全文索引,用 sphinx 或者 es 或者 框架自带的全文索引组件