HAproxy+Keepalied做MySQL负载均衡
HAproxy介绍 HAProxy详细介绍(一) HAProxy安装配置(二) Keepalive介绍 高可用软件keepalived详解 应用服务器对只读的应用程序连接虚拟IP地址,连接到haproxy,然后通过haproxy将TCP协议转移到下面的2个MySQL SLAVE数据库服务器中。Haproxy在此做4层的TCP交换服务。keepalived为了……
MySQL批量创建多库多表示例
由于业务需要对MySQL数据库进行分库分表操作,大概需要建立10个库,每个库根据日期建立一年的表,格式如下: 库:meta_file_1-10 表:meta_file_20170101-20171231 还好库和表名称是规律的,并且表结构相同,所以可以使用脚本处理。 CREATE TABLE mate_file_1( ……
MySQL特性及架构
一、MySQL数据库特性 1. 内部构件和可移植性 使用C和C++编写,保证了源代码的可移植性。 支持多种平台。 提供众多编程语言的API接口。 采用核心线程和完全多线程(使用多CPU)。 提供事务性和非事务性存储引擎。 使用极快的”B树”磁盘表和索引压缩。 极快的基于线程的内存分配系统。 提供TCP/IP、ODBC和JDBC等多种数据库连接途径。 存储器中……
找出MySQL服务器发生SWAP的原因?
首先,讲一下MySQL的内存消耗分为: 会话级别的内存消耗:如 sort_buffer_size 等,每个会话都会开辟一个 sort_buffer_size 来进行排序操作。 全局的内存消耗:例如 innodb_buffer_pool_size 等,全局共享的内存段。 关于会话级的内存消耗解释如下: read_buffer_size,sort_buffe……
MySQL为什么要关闭Query Cache?
当你的数据库打开了Query Cache(简称QC)功能后,数据库在执行SELECT语句时,会将其结果放到QC中,当下一次处理同样的SELECT请求时,数据库就会从QC取得结果,而不需要去数据表中查询。 在这个”Cache为王”的时代,我们总是通过不同的方式去缓存我们的结果从而提高响应效率,但一个缓存机制是否有效,效果如何,却是一……
FLUSH TABLES WITH READ LOCK
一、FTWRL FLUSH TABLES WITH READ LOCK(FTWRL),该命令属于 MySQL Server 命令,多用于备份的时候对全局表进行锁定来获取 binlog 信息。虽然持有时间很短,但容易被大操作堵塞造成备份不能完成。由于 FTWRL 总共需要持有两把全局的 MDL(Metadata Data Lock)锁,并且还需要关闭所有表对象……
MySQL最优配置模板( 5.6&5.7)
MySQL 5.6&5.7配置文件(姜总提供) [mysql] default-character-set=utf8mb4 user = root password = 123456 port = 3306 socket = /tmp/mysqld.sock prompt="\u@\h \d>" ……
MySQL主库 crash-safe 与 binlog 关系?
一、什么是CrashSafe? CrashSafe指MySQL服务器宕机重启后,能够保证: – 所有已经提交的事务的数据仍然存在。 – 所有没有提交的事务的数据自动回滚。 Innodb通过Redo Log和Undo Log可以保证以上两点。为了保证严格的CrashSafe,必须要在每个事务提交的时候,将Redo Log写入硬件存储。这……
MySQL基于SSL复制的配置过程
MySQL的主从复制默认是明文传送的,如果在生产环境中跨网络传送,数据的安全性就无法完全保证,为了解决这一问题,我们需要一种安全的方式进行传送,即基于SSL加密进行数据传输。在进行SSL加密传输时可能需要先了解CA、证书及SSL相关知识才能更好地明白为何基于SSL的传输就会更加安全。CA、证书及SSL相关知识在本章节不会多加一说明,详情可以看本博客提供的“信……
为什么需要修改MySQL参数ft_min_word_len?
为什么要修改MySQL的ft_min_word_len? 从MySQL 4.0开始就支持全文索引功能,但是 MySQL 默认的最小索引长度是 4,如下: mysql> show variables like 'ft_min_word_len'; +-----------------+-------+ | Variabl……