Browsed by
分类:Mysql

Mysql教程

MySQL编程中的6个重要的实用技巧

MySQL编程中的6个重要的实用技巧

原文  http://www.techug.com/mysql-tips 每一行命令都是用分号(;)作为结束 对于MySQL,第一件你必须牢记的是它的每一行命令都是用分号(;)作为结束的,但当一行MySQL被插入在PHP代码中时,最好把后面的分号省略掉,例如: mysql_query("INSERT INTO tablename(first_name,last_name)VALUES('$first_name',$last_name'

MySQL分区技术

MySQL分区技术

针对海量数据的优化主要有两种: 大表拆小表的方式;SQL语句的优化 分区技术: 与水平分割类似,但它是在逻辑层进行的水平分表,对于应用程序而言它还是一张表 一、range方式 1、创建一张分区表 可以到/usr/local/mysql/var/test/下看到生成这么多文件(26个) 2、创建一张未分区表 可以到/usr/local/mysql/va

Mysql 主从从级联复制

Mysql 主从从级联复制

需求:三个服务器A->B->C级联主从 版本: 数据库 mysql 5.6_64bit_binary_install                            操作系统: redhat 6.4_x86_64bit Master :  192.168.0.186        =>主节点 slave1   :    192.168.0.167     =>中继节点 slave2   :    192.168.4.123 1:  

淘宝内部分享:MySQL & MariaDB性能优化

淘宝内部分享:MySQL & MariaDB性能优化

MySQL是目前使用最多的开源数据库,但是MySQL数据库的默认设置性能非常的差,必须进行不断的优化,而优化是一个复杂的任务,本文描述淘宝数据库团队针对MySQL数据库Metadata Lock子系统的优化,hash_scan 算法的实现解析的性能优化,TokuDB·版本优化,以及MariaDB·的性能优化。本文来自淘宝团队内部经验分享。 往期文章

用Twitter的cursor方式进行Web数据分页

用Twitter的cursor方式进行Web数据分页

本文讨论Web应用中实现数据分页功能,不同的技术实现方式的性能方区别。 上图功能的技术实现方法拿MySQL来举例就是 select * from msgs where thread_id = ? limit page * count, count 不过在看Twitter API的时候,我们却发现不少接口使用cursor的方法,而不用page, count这样直观的形式,如 followers ids 接口 URL:

Friendfeed的MySQL key/value存储

Friendfeed的MySQL key/value存储

这是一篇2009年初的资料How FriendFeed uses MySQL to store schema-less data,相信大部分人已经看过了。如Fenng的中文介绍FriendFeed 使用 MySQL 的经验。本文从不同的角度再补充下。作者几个月前也曾经在广州技术沙龙作过一次Key value store漫谈的演讲,许多参会人员对key value方向存在强烈的使用意愿,但同时也对完

为什么超长列表数据的翻页技术实现复杂

为什么超长列表数据的翻页技术实现复杂

http://timyang.net/data/key-list-pagination/ 今天讨论了一个传统的问题,问题本身比较简单,就是针对key-list类型的数据,如何优化方案做到性能与成本的tradeoff。Key-list在用户类型的产品中非常普遍,如一个用户的好友关系 {“uid”:{1,2,3,4,5}},表示uid包含有5个好友;一条微博下面的评论id列表{“weibo_id”: {

淘宝内部分享:怎么跳出MySQL的10个大坑

淘宝内部分享:怎么跳出MySQL的10个大坑

淘宝自从2010开始规模使用MySQL,替换了之前商品、交易、用户等原基于IOE方案的核心数据库,目前已部署数千台规模。同时和Oracle, Percona, Mariadb等上游厂商有良好合作,共向上游提交20多个Patch。目前淘宝核心系统研发部数据库组,根据淘宝的业务需求,改进数据库和提升性能,提供高性能、可扩展的、稳定可靠的数据库

MySQL索引原理及慢查询优化

MySQL索引原理及慢查询优化

http://tech.meituan.com/mysql-index.html MySQL凭借着出色的性能、低廉的成本、丰富的资源,已经成为绝大多数互联网公司的首选关系型数据库。虽然性能出色,但所谓“好马配好鞍”,如何能够更好的使用它,已经成为开发工程师的必修课,我们经常会从职位描述上看到诸如“精通MySQL”、“SQL语句优化”、“了解数据库原理

安装完 MySQL 后必须调整的 10 项配置

安装完 MySQL 后必须调整的 10 项配置

当我们被人雇来监测MySQL性能时,人们希望我们能够检视一下MySQL配置然后给出一些提高建议。许多人在事后都非常惊讶,因为我们建议他们仅仅改动几个设置,即使是这里有好几百个配置项。这篇文章的目的在于给你一份非常重要的配置项清单。 我们曾在几年前在博客里给出了这样的建议,但是MySQL的世界变化实在太快了! 写在

MySQL索引的创建、删除和查看

MySQL索引的创建、删除和查看

此文转自http://blogold.chinaunix.net/u3/93470/showart_2001536.html 1.索引作用 在索引列上,除了上面提到的有序查找之外,数据库利用各种各样的快速定位技术,能够大大提高查询效率。特别是当数据量非常大,查询涉及多个表时,使用索引往往能使查询速度加快成千上万倍。 例如,有3个未索引的表t1、t2、t3,分别只包

MYSQL的master-slave数据同步配置

MYSQL的master-slave数据同步配置

测试环境 redhat 9.0 mysql3.23.57 mysql数据同步备份 A服务器: 192.168.1.2 主服务器master B服务器: 192.168.1.3 副服务器slave A服务器设置 1 #mysql –u root –p 2 mysql>;GRANT FILE ON *.* TO backup@192.168.1.3 IDENTIFIED BY ‘1234’; 3 mysql>;\exit 上面是Master开放

mysqlbackup物理备份

mysqlbackup物理备份

一、备份命令行参数 1. 备份操作: backup, backup-and-apply-log, backup-to-image 2. 备份校验操作: apply-log, apply-incremental-backup 3. 恢复操作: copy-back, copy-back-and-apply-log 4. 单文件备份操作: image-to-backup-dir, backup-dir-to-image, list-image,extract, validate 5. 指定全备目录:–backup-d

MySQL数据库遭到攻击篡改—使用备份和binlog进行数据恢复

MySQL数据库遭到攻击篡改—使用备份和binlog进行数据恢复

数据篡改即是对计算机网络数据进行修改、增加或删除,造成数据破坏。数据库数据被攻击了首先得查看是被删除了还是被篡改了?是否有备份数据,是否能够进行恢复并加固。本文来自数据库技术专家张正,主要描述了MySQL遭到攻击篡改数据,利用从库的备份和主库的Binlog进行不完全恢复。 以下是作者原文: 一、发现问题 今天是

MySQL备份命令mysqldump参数说明与示例

MySQL备份命令mysqldump参数说明与示例

原文  http://segmentfault.com/blog/seanlook/1190000002428533 1. 语法选项说明 -h, --host=name 主机名 -P[ port_num], --port=port_num用于连接MySQL服务器的的TCP/IP端口号 --master-data这个选项可以把binlog的位置和文件名添加到输出中,如果等于1,将会打印成一个CHANGE MASTER 命令;如果等于2,会加上

乐观锁和悲观锁

乐观锁和悲观锁

最近晓靖给 skynet 提了一个 pr 。 提之前我们讨论了好久,据说是因为查另外一个问题时改写了 skynet 的消息调度部分发现在某些情况下可以提高 CPU 的使用率。 之前 skynet 的消息调度采用的是基于 cas 的无锁结构。但本质上,并发队列这种数据结构,无论是采用 spin-lock 还是 cas 无锁结构,为了保证时序,进队列或出队

数据库分表后,并发环境下,生成全局id生成的几种方式

数据库分表后,并发环境下,生成全局id生成的几种方式

最近一个项目由于数据量变大,需要进行数据分表。数据存储在淘宝的tddl上。分表后,原先的自增id就不能使用了。tddl对java支持很好,分表后无需考虑全局id的问题。但是这个项目使用的是php进行开发,必须自己生成全局id。以下列出几种分表方案,仅当抛砖引玉。 方法1:使用CAS(compare and swap) 其实这里并不是严格的

查询MYSQL和查询HBASE速度比较

查询MYSQL和查询HBASE速度比较

Mysql,关系型数据库; HBase,NoSql数据库。 查询Mysql和查询HBase,到底哪个速度快呢? 与一些真正的大牛讨论时,他们说HBase写入速度,可以达到每秒1W。而HBase的理想速度为每秒10W。 来个实验说明一下,此实验只能表明,当前环境下运行状态。我的实验效果,没有到1W,还在优化中… 环境: 有3台虚拟机,运行Hadoo

MySQL 数据库双主改造

MySQL 数据库双主改造

原文:http://www.ideawu.net/blog/archives/841.html 对于使用中的已有了一些数据库的 MySQL, 如何改造成双主呢? 这里写一篇文章, 详细记录操作步骤. 听取各位的意见. 这里假设有两台服务器: A 和 B. 要让他们互为主, 但实际使用时, 不同的服务器只服务不同的 db, 避免出现数据冲突. 1. 修改 nginx 配置, 挂维护页 这一

PHP开发者常犯的10个MySQL错误

PHP开发者常犯的10个MySQL错误

数据库是Web大多数应用开发的基础。如果你是用PHP,那么大多数据库用的是MySQL也是LAMP架构的重要部分。PHP看起来很简单,一个初学者也可以几个小时内就能开始写函数了。但是建立一个稳定、可靠的数据库确需要时间和经验。下面就是一些这样的经验,不仅仅是MYSQL,其他数据库也一样可以参考。 1.使用MyISAM而不是InnoDB