MYSQL在线大表DDL操作
作为DBA,我们也常常会碰到这样的需求:需要在不影响线上业务的情况下给表添加一个字段或索引。如果是一张只有几百或几千条记录的小表,这样的需求是非常容易解决的。但如果所管理的表数据量已经上亿、而且应用与数据库交互非常频繁,不允许停机窗口的出现,这样的需求又该如何满足?大多数的alter table操作都会涉及lock-->copy to new table-->rename-->unlock的过程,锁表时间会很长,而且alter table 的process不可被kill,一旦执行就不可回退。在MySQL5.5和之前版本,在运行的生产环境对大表(超过数百万纪录)执行Alter操作是一件很困难的事情。因为将重建表和锁表,影响用户者的使用。从MySQL5.6开始,Online DDL特性被引进。他增强了很多种类的Alter Table操作避免拷贝表和锁表,在运行Alter操作的同时允许运行select,insert,update,delete语句。因此在最新版本,我们可以通过使用ALGORITHM和LOCK选项抑制文件拷贝和加锁。但是即使在MySQL5
MYSQL安装之源码安装
MYSQL的安装分三种:命令行安装、二进制安装和源码安装命令行安装相对而言简单,我们就不做过多陈述,今天就着重讲讲MYSQL的源码安装编译安装过程描述: 1.下载源代码 2.检查源码编译所需的依赖包是否齐全 3.解压编译 4.make && make install 5.初始化数据目录 6.数据库权限设置 7.定义启动方式 软件安装的常规设置: 软件安装包放在/usr/local/src下 软件根目录在/usr/local/xxx下,如:/usr/local/mysql 配置文件在/etc/下,如:/etc/my.cnf