MySQL MySQL报错Lost connection to MySQL server at ‘reading initial communication packet’的解决办法 使用mysql连接远程服务器时报错,在百度和google查找都没有找到能解决问题的办法: 分析应该是以下两个原因导致的: 服务器有防火墙,禁止3306端口的访问。 用户没有授权远程访问。 第二个错误首... 02月29日评论 阅读全文
MySQL MySQL中的聚簇索引、非聚簇索引、联合索引和唯一索引 一、索引类型 索引根据底层实现可分为B-Tree索引和哈希索引,大部分时候我们使用的都是B-Tree索引,因为它良好的性能和特性更适合于构建高并发系统。 根据索引的存储方式来划分,索引可以分为聚簇索引... 02月19日4 阅读全文
MySQL MySQL中的B+树索引和哈希索引 一、为什么要使用索引 索引是存储引擎用于快速找到记录的一种数据结构。索引对于数据库良好的性能十分关键,尤其是表中的数据量越来越大时,索引对性能的影响十分明显。 《高性能MySQL》中对索引的评价是:索... 02月16日评论 阅读全文
MySQL 数据库中的多版本并发控制(MVCC) 一、概述 事务的出现给并发带来了巨大的便利性,它的ACID特性使得数据在并发时更加可靠。但是对于事务而言,它也会导致出现第一类丢失更新、第二类丢失更新、脏读、不可重复读以及幻读的问题,当然又出现了多种... 01月25日评论 阅读全文
MySQL MySQL中的行锁、两阶段锁协议以及死锁 一、行锁和两阶段锁协议 行锁:顾名思义,就是对某一行加锁,修改的时候不会锁住整个表。相对于表锁来说,行锁的开销更大(因为涉及到MVCC等需要保存快照),但是粒度更小,更适合于高并发场景。行锁是每个引擎... 01月22日评论 阅读全文
MySQL MySQL两种引擎的区别 一、区别 区别一:MyISAM是非事务安全的,InnoDB是事务安全的 事务安全的特点为更安全,遇到问题会自动恢复或从备份加事务日志回复,如果更新失败,你的所有改变都变回原来。 非事务安全的优点为更快... 05月04日评论 阅读全文
MySQL MySQL中的redolog/undolog/binlog 一、概述 binlog/redolog/undolog都是msql中的日志模块,binlog一般被称为二进制日志(也成为归档日志),redolog成为重做日志,undolog称为回滚日志。其中二进制日... 01月22日1 阅读全文
MySQL 使用mysqldump备份和数恢复数据库 一、备份数据库 mysql自带了数据库备份工具mysqldump可以很方便的对数据库进行备份: 以上命令就完成了一次数据备份,备份后的数据保存在文件db.sql,参数--all-databases是指... 08月19日评论 阅读全文
MySQL 给MySQL终端prompt设置颜色 昨天给shell的prompt设置了终端颜色,今天突然奇想能不能给mysql的prompt也设置颜色,网上查了一下还真有,在.bashrc中添加以下设置即可开启颜色: 显示效果如下: 上面的代码中,\... 08月18日评论 阅读全文
MySQL MYSQL基础之SELECT语句(一):SELECT的基本用法 一、SELECT介绍 1.1 SELECT SELECT是数据库四大基本操作的一种,用于查询表中的数据信息。 基本的查询语法为:SELECT 列1, 列2, ... FROM 表,表示从表中取出对应的... 03月25日评论 阅读全文