摘要: · MySQL性能调优与架构设计 —— 简朝阳 著综合介绍,是新手提升的不错书籍。· 高性能 MySQL (第二版)DBA的参考书籍,但翻译水平不太好~ 阅读全文
posted @ 2011-10-09 15:25 luckc# 阅读(1335) 评论(0) 推荐(0) 编辑
摘要: 查看索引使用情况 如果索引正在工作, Handler_read_key 的值将很高,这个值代表了一个行被索引值读的次数,很低的值表明增加索引得到的性能改善不高,因为索引并不经常使用。 Handler_read_rnd_next 的值高则意味着查询运行低效,并且应该建立索引补救。这个值的含义是在数据文件中读下一行的请求数。如果你正进行大量的表扫描,该值较高。通常说明表索引不正确或写入的查询没有利... 阅读全文
posted @ 2011-10-09 15:10 luckc# 阅读(294) 评论(0) 推荐(0) 编辑
摘要: 最近经常有人问我 MySQL Query Cache 相关的问题,就整理一点 MySQL Query Cache 的内容,以供参考。 顾名思义,MySQL Query Cache 就是用来缓存和 Query 相关的数据的。具体来说,Query Cache 缓存了我们客户端提交给 MySQL 的 SELECT 语句以及该语句的结果集。大概来讲,就是将 SELECT 语句和语句的结果做了一个 HAS... 阅读全文
posted @ 2011-10-09 15:09 luckc# 阅读(132) 评论(0) 推荐(0) 编辑
摘要: MySQL从5.1.4版开始带有一个压力测试工具mysqlslap,通过模拟多个并发客户端访问 mysql来执行测试,使用起来非常的简单。通过mysqlslap –help可以获得可用的选项,这里列一些主要的参数,更详细的说明参考官方手册。 –auto-generate-sql, -a 自动生成测试表和数据 –auto-generate-sql-load... 阅读全文
posted @ 2011-10-09 15:08 luckc# 阅读(199) 评论(0) 推荐(0) 编辑
摘要: mysql slow log 是用来记录执行时间较长(超过long_query_time秒)的sql的一种日志工具. 启用 slow log 有两种启用方式: 1, 在my.cnf 里 通过 log-slow-queries[=file_name] 2, 在mysqld进程启动时,指定–log-slow-queries[=file_name]选项 比较的五款常用工具 m... 阅读全文
posted @ 2011-10-09 15:06 luckc# 阅读(195) 评论(0) 推荐(0) 编辑
摘要: 今天,数据库的操作越来越成 为整个应用的性能瓶颈了,这点对于 Web应用尤其明显。关于数据库的性能,这并不只是DBA才需要担心的事,而这更是我们程序员需要去关注的事 情。当我们去设计数据库表结构,对 操作数据库时(尤其是查表时的SQL语句),我们都需要注意数据操作的 性能。这里,我们不会 讲过多的SQL语句的优化,而只是针对MySQL这一Web应用最多的数据库。希望下面的这些优化技巧对你有用。 ... 阅读全文
posted @ 2011-10-09 15:04 luckc# 阅读(133) 评论(0) 推荐(0) 编辑
摘要: MySQL Cluster是MySQL适合于分布式计算环境的高实用、高冗余版本。它采用了NDB Cluster存储引擎,允许在1个Cluster中运行多个MySQL服务器。 MySQL Cluster是一种技术,该技术允许在无共享的系统中部署“内存中”数据库的Cluster。通过无共享体系结构,系统能够使用廉价的硬件,而且对软硬 件无特殊要求。此外,由于每个组件有自己的内存和磁盘,不存在单点故障... 阅读全文
posted @ 2011-10-09 15:02 luckc# 阅读(629) 评论(0) 推荐(0) 编辑
摘要: 在为某证券公司设计其OA架构时,初期客户是30万用户在线;然而在项目实施中,客户又提出50万用户同时在线的需求,而且都有写的需求;这样初始的设计 master-master-slave,读写分离满足不了客户的要求,所以我们打算采用Mysql Cluster方案;MySQL Cluster 是MySQL适合于分布式计算环境的高实用、高冗余版本。它采用了NDB Cluster 存储引擎,允许在1个Cl... 阅读全文
posted @ 2011-10-09 15:00 luckc# 阅读(305) 评论(0) 推荐(0) 编辑
摘要: MySql 性能到底能有多高?用了php半年多,真正如此深入的去思考这个问题还是从前天开始。有过痛苦有过绝望,到现在充满信心!MySql 这个数据库绝对是适合dba级的高手去玩的,一般做一点1万篇新闻的小型系统怎么写都可以,用xx框架可以实现快速开发。可是数据量到了10万,百万至千万,他的性能还能那么高吗?一点小小的失误,可能造成整个系统的改写,甚至更本系统无法正常运行!好了,不那么多废话了。用事... 阅读全文
posted @ 2011-10-09 14:59 luckc# 阅读(176) 评论(0) 推荐(0) 编辑
摘要: MYSQL的优化是非常重要的。其他最常用也最需要优化的就是limit。mysql的limit给分页带来了极大的方便,但数据量一大的时候,limit的性能就急剧下降。 同样是取10条数据 select * from yanxue8_visit limit 10000,10 和 select * from yanxue8_visit limit 0,10 就不是一个数量级别的。 网... 阅读全文
posted @ 2011-10-09 14:57 luckc# 阅读(288) 评论(0) 推荐(0) 编辑
摘要: – 备份 mysqldump –force –quick –skip-opt –create-options –add-drop-table –extended-insert –host=”localhost” –user=”root” –password=”密码” “数据库名称” > C:/2010-01-26.sql – 还原 mysql –host=”localh... 阅读全文
posted @ 2011-10-09 14:53 luckc# 阅读(305) 评论(0) 推荐(0) 编辑
摘要: Replication 线程 Mysql的 Replication 是一个异步的复制过程,从一个 Mysql instace(我们称之为 Master)复制到另一个 Mysql instance(我们称之 Slave)。在 Master 与 Slave 之间的实现整个复制过程主要由三个线程来完成,其中两个线程(Sql线程和IO线程)在 Slave 端,另外一个线程(IO线程)在 Master... 阅读全文
posted @ 2011-10-09 14:47 luckc# 阅读(152) 评论(0) 推荐(0) 编辑
摘要: 环境拓扑 服务器:192.168.1.10 客户端:192.168.1.12 一、安装rsync(服务器、客户端都需要安装) #tar zxvf rsync-3.0.8.tar.gz #cd rsync-3.0.8 #./configure && make && make install 二、配置server #vi /etc/rsync.conf 创建配置... 阅读全文
posted @ 2011-10-09 14:42 luckc# 阅读(180) 评论(0) 推荐(0) 编辑
摘要: 需求如下:某公司有一台数据库服务器托管在IDC,为了保障数据库的安全性,需要对其做定时备份,又为了防止数据库服务器出现硬件故障,同时要求将备份数据定时传送至公司内网文件服务器上存档。一、配置数据库服务器1、撰写mysql自动备份脚本mysql备份主要包括热备和冷备,在此使用热备,也就是利用mysqldump导出SQL语句的方式进行备份#vi /etc/mysqlback.sh#!/bin/bashDB_NAME="luwenju" //需要备份的数据库DB_USER="luwenju" //数据库用户名DB_PASS="luwenju" 阅读全文
posted @ 2011-10-09 14:28 luckc# 阅读(343) 评论(2) 推荐(0) 编辑
摘要: MySQL数据库性能优化是本文的主要核心,将从数据库的优化设计,到具体的操作。好的优化能使服务器性能提升较大的空间,希望本文对大家有所帮助。1. MySQL性能优化简介在Web应用程序体系架构中,数据持久层(通常是一个关系数据库)是关键的核心部分,它对系统的性能有非常重要的影响。MySQL是目前使用最多的开源数据库,但是MySQL数据库的默认设置性能非常的差,仅仅是一个玩具数据库。因此在产品中使用MySQL数据库必须进行必要的优化。优化是一个复杂的任务,本文描述MySQL相关的数据库设计和查询优化,服务器端优化,存储引擎优化。2. 数据库设计和查询优化在MySQL性能优化中,首先要考虑的就是D 阅读全文
posted @ 2011-10-09 14:22 luckc# 阅读(272) 评论(0) 推荐(0) 编辑
摘要: 1、如果mysql的data数据很少,内存足够大,可以把data防止到内存盘中。linux如下设置内存盘:mount -t ramfs none /ram默认使用内存一半如果内存不够大,系统有多个硬盘,则把mysql应用程序和data目录分开到不同硬盘上。2、mysql的表设置为myiasm,比同等条件下的innodb能快20倍以上3、导入完成以后才创建数据库索引4、导入完成以后根据需要转换为其他engine,比如innodb5、多条数据插入一个表,可以使用多记录方式:insert into tablename values(’xxx’,'xxx’),(’yyy’,'yyy’) 阅读全文
posted @ 2011-10-09 14:19 luckc# 阅读(188) 评论(0) 推荐(0) 编辑
摘要: 【导读】: 为提高MySQL服务器提供数据服务的可用性和可靠性,实际生产环境中,大量使用简洁易行的异步数据复制技术,且多采用双向复制的架构,以便做到自动或人力快速切换的效果。关于MySQL的数据异步复制技术的数据一致性,在推出支持基于行、混合模式复制之后,是否真如手册所言,彻底解决数据复制的一致性呢?关于二进制日志登记模式的知识,大家可以阅读曾写过的文章,超链接地址:解读MySQL事务的隔离级别和日志登记模式选择技巧。自从本人使用mysql复制技术以来,就一直对业务场景为:用户自身的操作行为,会使用户之间的数据操更改存在交叉行为,若使用双向复制的架构,但是不要对数据库的更新操作进行负载均衡,也 阅读全文
posted @ 2011-10-09 14:11 luckc# 阅读(308) 评论(0) 推荐(0) 编辑
摘要: Facebook的用户每天创造大量的数据,为了确保数据可靠的存储,我们每天进行数据备份.我们通过将原来的逻辑备份改成定制化的物理备份,显著地提升了备份的速度(不增加体积的情况下).从mysqldump到Xtrabackup我们使用mysqldump来进行每日的数据库备份,mysqldump对数据进行逻辑备份,就像应用访问数据库那样,mysqldump以SQL 语句的方式从数据库中读取一张张表,将表结构和数据转保存到文本文件.mysqldump最大的问题是速度太慢(对于我们的一些大的数据库,通常要花24 小时,甚至更久),并且以SQL语句的方式读取数据可能造成磁盘的随机读,这就会造成主机的loa 阅读全文
posted @ 2011-10-09 13:50 luckc# 阅读(245) 评论(0) 推荐(0) 编辑
摘要: 用户信息表(t_user_info)字段名称字节数类型描述User_id4uint32用户编号(主键)User_name20Char[20]名称Msg_count4uint32发布消息数量,可以作为t_msg_info水平切分新表的auto_incrementFans_count4uint32粉丝数量Follow_count4Uint32关注对象数量备注:以User_id取模分表用户之间关系表(t_user_relation),必须有关注与被关注的关系字段名称字节数类型描述User_id4uint32用户编号(联合主键)Follow_id4uint32被关注者编号(联合主键)Type1Uint 阅读全文
posted @ 2011-10-09 13:38 luckc# 阅读(480) 评论(2) 推荐(0) 编辑
摘要: 相关文档:http://wenku.baidu.com/view/d10a7ea20029bd64783e2cdd.html#BEGIN CONFIG INFO #DESCR: 4GB RAM, 只使用InnoDB, ACID, 少量的连接, 队列负载大 #TYPE: SYSTEM #END CONFIG INFO# # 此mysql配置文件例子针对4G内存,并在两个日ip 2w ,pv 20w 测试过的。 # 主要使用INNODB #处理复杂队列并且连接数量较少的mysql服务器 # # 将此文件复制到/etc/my.cnf 作为全局设置, # mysql-data-dir/my.cnf 作 阅读全文
posted @ 2011-10-09 13:35 luckc# 阅读(252) 评论(0) 推荐(0) 编辑