自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(96)
  • 收藏
  • 关注

原创 perl hash 累加

flow02:/home/tomcat> cat tmp.out 1.1.1.1flow02:/home/tomcat> flow02:/home/tomcat> flow02:/home/tomcat> cat a2.pl open (LOG ,"<","tmp.out"); while () {

2015-10-31 21:06:45 1743

原创 linux 批量ssh认证

redis01:/root# cd .ssh-bash: cd: .ssh: No such file or directoryredis01:/root# pwd/rootredis01:/root# cd .sshredis01:/root/.ssh# lsknown_hostsredis01:/root/.ssh# lsid_rsa id_rsa.pub known

2015-10-30 16:20:55 915

原创 shell 执行expect

#!/bin/bashpasswd='1234567'/usr/bin/expect<<EOFset time 30spawn ssh root@192.168.32.65expect {"*yes/no" { send "yes\r"; exp_continue }"*password:" { send "$passwd\r" }}expect "*#"send "who\

2015-10-30 11:29:16 920

原创 8.8.4 Estimating Query Performance 评估查询性能

8.8 Understanding the Query Execution Plan 了解执行计划8.8.1 Optimizing Queries with EXPLAIN 使用EXPAIN 优化查询8.8.2 EXPLAIN Output Format EXPLAIN 输出格式8.8.3 EXPLAIN EXTENDED Output Format EXPLAIN 扩展输出格式8.8.4 Es

2015-10-29 17:25:07 517

原创 MyISAM 表的index blocks 是buffered 和被所有的threads 共享。

MyISAM 表的index blocks 是buffered 和被所有的threads 共享。key_buffer_size 是用于 index blocks 的size ,key buffer 也被称为key cache.key_buffer_size 最大允许的值是4GB?1 on 32-bit 平台上。在64位平台上更大的值被允许,有效的最大值可能会小,依赖你的可用的物理内存和每个进程RA

2015-10-29 09:49:52 370

原创 8.5.9 Optimizing InnoDB Configuration Variables 优化InnoDB 配置变量

8.5.9 Optimizing InnoDB Configuration Variables 优化InnoDB 配置变量不同的设置更好的对于服务器的light, 可预测的负载,服务器运行的所有的时间,或者高活动的。因为InnoDB 存储引擎执行很多的自动优化, 很多的性能调优的任务设计监控来确保数据库是表现良好的改变配置选项 当性能下降时。 See Section 14.13, “InnoDB

2015-10-28 17:39:38 288

原创 8.5.8 Optimizing InnoDB Disk IO 优化InnoDB Disk I/O

8.5.8 Optimizing InnoDB Disk IO 优化InnoDB Disk I/O如果你遵循最佳实践对于数据库的设计和调优技术对于SQL操作,但是你的数据库仍旧是很慢的 由于沉重的disk I/O 活动,探索这些low-level 技术相关的disk I/O如果unix top攻击或者Windows Task Manager 显示CPU 使用率是小于70%,你的workload 可

2015-10-28 16:27:48 418

原创 8.5.6 Optimizing InnoDB Queries 优化InnoDB 查询

8.5.6 Optimizing InnoDB Queries 优化InnoDB 查询调整 InnoDB 表的查询,创建一个合适的索引在每个表上 See Section 8.3.1, “How MySQL Uses Indexes” for details.遵循下面的InnoDB 索引指南:因为每个InnoDB 表有一个primary key(无论你要求一个还是没有),指定一个主键为每一个表,列是

2015-10-28 15:37:33 358

原创 8.5.5 Bulk Data Loading for InnoDB Tables 批量数据加载到InnoDB 表

8.5.5 Bulk Data Loading for InnoDB Tables 批量数据加载到InnoDB 表这个性能tips 补充常用的准则用于快速插入数据Section 8.2.2.1, “Speed of INSERT Statements”.当数据插入到InnoDB,关闭自动提交模式,因为它执行一个log flush 到磁盘在每次插入。关闭自动提交在你的导入操作SET autocomm

2015-10-28 15:05:11 611

原创 14.4.2 Changing the Number or Size of InnoDB Redo Log Files

14.4.2 Changing the Number or Size of InnoDB Redo Log FilesTo change the number or size of InnoDB redo log files in MySQL 5.6.7 or earlier, perform the following steps:改变InnoDB redo log files的 number 或

2015-10-28 11:25:45 337

原创 8.5.4 Optimizing InnoDB Redo Logging 优化InnoDB Redo Logging

8.5.4 Optimizing InnoDB Redo Logging 优化InnoDB Redo Logging考虑优化重做日志:使你的redo log 文件变大, 甚至和Buffer pool一样大。当InnoDB 把redo log文件写满, 它必须把修改的内容从Buffer pool 写到disk 在一个检查点。小的redo log 文件导致很多不必要的磁盘读写,尽管历史上大的redo

2015-10-28 10:27:58 378

原创 8.5.2 Optimizing InnoDB Transaction Management

8.5.2 Optimizing InnoDB Transaction Management优化InnoDB 事务处理,找到理想的平衡在性能负载和你的服务器的负载。比如,一个应用可能遇到性能问题如果它每秒提交了数千次,和不同的性能问题如果它每2-3个小时提交。默认的MySQL 设置为AUTOCOMMIT=1 ,可以强加性能限制在一个繁忙的数据库上.在实践中,把几个相关的DML操作到一个单独的事务,通

2015-10-28 09:32:45 293

原创 8.5.1 Optimizing Storage Layout for InnoDB Tables

8.5 Optimizing for InnoDB Table 优化InnoDB 表8.5.1 Optimizing Storage Layout for InnoDB Tables 8.5.2 Optimizing InnoDB Transaction Management 8.5.3 Optimizing InnoDB Read-Only Transactions 8.5.4 Optim

2015-10-27 14:42:46 353

原创 8.4 Optimizing Database Structure 优化数据库结构

8.4 Optimizing Database Structure 优化数据库结构8.4.1 Optimizing Data Size 优化数组大小8.4.2 Optimizing MySQL Data Types 优化MySQL 数据类型8.4.3 Optimizing for Many Tables 8.4.4 How MySQL Uses Internal Temporary Tables

2015-10-26 17:57:39 387

原创 8.3.7 InnoDB and MyISAM Index Statistics Collection InnoDB 和MyISAM 索引统计信息收集

8.3.7 InnoDB and MyISAM Index Statistics Collection InnoDB 和MyISAM 索引统计信息收集存储引擎搜集关于表的统计信息用于优化,表统计信息是基于值组的,值组是一个行集具有相当的前缀值的Key,对于优化目的,一个重要的统计信息是平均值组大小。MySQL 采用平均值组以下面的方式:1.评估每次ref 访问需要读取多少记录2.评估一个部分关联产

2015-10-26 16:27:03 442

原创 8.3.5 Multiple-Column Indexes 多列索引:

8.3.5 Multiple-Column Indexes 多列索引:MySQL 可以创建符合索引(即,索引在多列上).一个索引可能有最多16列组成,对于某些数据类型,你可以索引一个列的前缀。Mysql 可以使用多列索引用于查询,测试索引里的所有的列,或者只测试第一列,前2列,前3列如果你指定列按正确的顺序在索引定义里,一个单独额复合索引能加速几种类型的查询。多列索引可以被认为是一个排序的数组, 索

2015-10-26 15:13:06 451

原创 8.3.4 Column Indexes 列索引

8.3.4 Column Indexes 列索引最常用的索引类型设计,单列,存储值的拷贝,允许快速查找记录B-tree 数据结果让索引快速的找到一个特定的值,一组值,一个范围的值,相应的操作符为=,>,<= 在WHERE 条件里一个表最大的索引数和索引的深度是有每个存储引擎决定。See Chapter 15, Alternative Storage Engines. 所有的存储类型引擎支持至少16

2015-10-26 13:37:40 525

原创 8.3.2 Using Primary Keys 使用主键:

8.3.2 Using Primary Keys 使用主键:表的主键表示列或者列的集合,你用于在大多数重要的列。如果有一个相关的索引,用于快速查询性能。查询性能从NOT NULL优化中收益, 因为它不能报考任何NULL值。在InnoDB 存储引擎里, 表数据是物理组织成快速查询和排序基于主键列。如果你的表是很大很重要的,但是没有一个明显的列或者列的集合用于主键,你可能会创建一个单独的列使用 auto

2015-10-26 11:31:34 366

原创 8.3.1 How MySQL Uses Indexes MySQL 如何使用索引

8.3.1 How MySQL Uses Indexes MySQL 如何使用索引8.3.2 Using Primary Keys 使用主键8.3.3 Using Foreign Keys 使用外键8.3.4 Column Indexes 单列索引8.3.5 Multiple-Column Indexes 多列索引8.3.6 Verifying Ind

2015-10-26 11:15:59 357

原创 标量 数组 hash 引用

[root@master Webqq]# cat t23.pl $var='aaa';$refvar=\$var;print "$$refvar\n";@arr=qw/1 3 5/;$refarr=\@arr;print @$refarr;print "\n";%hash=(a=>1,b=>2,c=>3);$refhash=\%hash;print %$refhash

2015-10-24 12:50:39 425

原创 perl dbi unload utf8脚本

#!/usr/bin/perl use DBI;$db_name='zjzc';$ip='127.0.0.1';$user="root";$passwd="1234567";$dbh="";$dbh = DBI->connect("dbi:mysql:database=$db_name;host=$ip;port=3306",$user,$passwd) or die "can't

2015-10-24 07:45:22 389

原创 mysql dbi utf8乱码问题

#!/usr/bin/perl use DBI; $user="root"; $passwd="1234567"; $dbh=""; $dbh = DBI->connect("dbi:mysql:database=zjzc;host=127.0.0.1;port=3306",$user,$passwd) or die "can't connect to database ".

2015-10-23 16:57:43 857

原创 8.2.2.2 Speed of UPDATE Statements 加速UPDATE语句:

8.2.2.2 Speed of UPDATE Statements 加速UPDATE语句:一个更新语句被优化像一个SELECT 查询,但是有额外的写。写的速度依赖更新的数量和需要被更新的索引,不改变的索引不被更新。另一种访问得到快速的更新是延迟更新,然后在一行做很多的更新,执行很多更新一起是比如一次更新一条更快对于一个MyISAM表,使用动态的行格式,更新一个记录到一个更长的总长度可能分裂记录。8

2015-10-23 16:03:36 309

原创 8.2.2 Optimizing DML Statements 优化DML 语句:

8.2.2 Optimizing DML Statements 优化DML 语句:8.2.2.1 Speed of INSERT Statements 8.2.2.2 Speed of UPDATE Statements 8.2.2.3 Speed of DELETE Statements这个章节显示 如何加速DML操作,INSERT,UPDATE和DELETE。传统的OLTP 应用和现代的we

2015-10-23 15:47:20 376

原创 8.2.1.19 Optimizing LIMIT Queries 优化LIMIT 查询:

8.2.1.19 Optimizing LIMIT Queries 优化LIMIT 查询:如果你只需要记录的特定列从一个结果集,使用一个LIMIT 子句在一个查询里,而不是获取整个结果集,扔掉额外的数据。MySQL 有时候优化一个查询有一个LIMIT row_count 子句,没有HAVING 子句:如果你只选择一小部分的记录使用LIMIT,MySQL 使用indexed 在一些例子里,通常它宁愿

2015-10-23 13:57:32 295

原创 8.2.1.17 DISTINCT Optimization

8.2.1.17 DISTINCT OptimizationDISTINCT 结合ORDER BY 需要一个临时表在很多情况下:因为DISTINCT 可能使用GROUP BY, 了解MySQL 和列在ORDER BY 或者HAVING 子句不是SELECT 的列在大多数情况下,一个DISTINCT 子句可以被认为一个特定GROUP BY 的例子,比如,下面两个查询是等价:SELECT DISTINC

2015-10-23 10:42:28 344

原创 8.2.1.16 GROUP BY Optimization

8.2.1.16 GROUP BY Optimization最大的方式来满足一个GROUP BY 子句是来scan 整个表,创建一个新的临时表,所有的记录从每个组是连续的, 然后使用临时表来发现组和应用聚合函数(如果有的话),在一些情况下, MySQL 是能够做的更好,避免创建临时表通过使用索引访问。最重要的前提用于使用索引用于GROUP BY 是,所有的GROUP BY 子句关联关联相同索引的属性

2015-10-23 10:13:52 358

原创 设置 read_rnd_buffer_size

read_rnd_buffer_sizeVariable Scope Global, Session这个变量用于读取MyISAM表,对于任何存储引擎用于Multi-Range Read optimization.当读取行从一个MyISAM 表按排序顺序跟着一个key-sorting operation,记录从这个buffer读取,避免磁盘寻址See Section 8.2.1.15, “ORDER

2015-10-22 16:31:21 5452

原创 设置sort_buffer_size

sort_buffer_size mysql> show variables like ‘%sort_buffer_size%’; +————————-+———+ | Variable_name | Value | +————————-+———+ | innodb_sort_buffer_size | 1048576 | | myisam_sort_buffer_

2015-10-22 16:21:04 24411 2

原创 mysql 参数作用域

[isamchk] key_buffer = 20M sort_buffer_size = 20M read_buffer = 2M write_buffer = 2M[myisamchk] key_buffer = 20M sort_buffer_size = 20M read_buffer = 2M write_buffer = 2M[mysqlhotcopy] interac

2015-10-22 15:52:56 655

原创 8.2.1.15 ORDER BY Optimization

8.2.1.15 ORDER BY Optimization在有些情况下,MySQL 可以使用index 来返祖order by 子句而不做任何额外的排序:index 可以用于使用,即使 ORDER BY 不匹配index exactly, 只要所有的索引的不使用的部分和所有的额外的ORDER BY 子句是常量在WHERE 子句里,下面的查询使用index 来拒绝排序:SELECT * FROM t

2015-10-22 15:48:01 449

原创 Mysql 参数

[client]port    = 7999socket  = /tmp/mysql.sock[mysqld]port    = 7999socket  = /tmp/mysql.sockdatadir = /data/mysql/datalog-error = /data/mysql/log/45.errslave_skip_errors = allskip_

2015-10-22 11:17:41 311

原创 mysql rowid

mysql 没有rowidprimary key(id,sn);second index (name) —隐含为(id,sn,name)二级索引里存的是 PK

2015-10-21 14:13:48 7724

原创 8.2.1.13 Multi-Range Read Optimization 多个范围读优化

8.2.1.13 Multi-Range Read Optimization 多个范围读优化使用range scan 来读取数据库在一个 secondary index 可以导致需要的随机磁盘读写当表是大的和不是存储的在存储引擎的cache里的时候。Disk-Sweep Multi-Range Read (MRR)优化,MySQL 尝试降低随机磁盘访问对于range scan的次数通过首先扫描只有

2015-10-21 14:06:57 1078

原创 8.2.1.11 Nested Join Optimization 嵌套关联优化

8.2.1.11 Nested Join Optimization 嵌套关联优化连接的关联语法运行嵌套循环,下面的讨论是指13.2.9.2章节的描述,“JOIN Syntax”.table_factor 的语法是被扩展的 比较SQL标准 。后者只接受table_reference,不是它们的列表在一对圆括号内,这是一个保守的延伸,如果我们考虑每个逗号 在一个 table_reference的引用。S

2015-10-21 10:39:14 680

原创 8.2.1.10 Nested-Loop Join Algorithms 嵌套循环算法:

8.2.1.10 Nested-Loop Join Algorithms 嵌套循环算法:MySQL 在表之间执行关联使用一个嵌套循环算法:嵌套循环算法:一个简单的嵌套关联算法从循环中的第一个表中读取记录, 传递每行给嵌套循环来处理下一个表在关联里,这个过程是重复很多次的 ,因为还有顺下的表被关联起来。假设一个关联在表t1,t2,t3 被执行使用下面的关联类型:Table Join Type t

2015-10-20 17:35:31 550

原创 8.2.1.9 LEFT JOIN and RIGHT JOIN Optimization 左关联和又关联

8.2.1.9 LEFT JOIN and RIGHT JOIN Optimization 左关联和又关联MySQL 实现一个A LEFT JOIN B 关联如下:1.table B 是设置为依赖表A 和A依赖的所有表表A 是设置为所有的表(除了B) 用于LEFT JOIN 条件:LEFT JOIN 条件是用于确定如何从B表检索记录(换句话说,WHERE 子句中的任何条件不被使用)所有的标准连

2015-10-20 16:45:08 470

原创 8.2.1.8 IS NULL Optimization NULL 优化:

8.2.1.8 IS NULL Optimization NULL 优化:MySQL 可以执行相同的优化在col_name IS NULL ,可以使用col_name =常值MySQL 可以使用索引和范围查找NULL :mysql> explain select * from test where id is NULL; +—-+————-+——-+——+—————+———–+———+——-+—

2015-10-20 15:16:40 447

原创 8.2.1.7 Use of Index Extensions 索引扩展适用

8.2.1.7 Use of Index Extensions 索引扩展适用InnoDB 自动扩展每个secondary index 通过添加主键列到secondary index ,考虑这个表定义:CREATE TABLE t1 ( i1 INT NOT NULL DEFAULT 0, i2 INT NOT NULL DEFAULT 0, d DATE DEFAULT NULL,

2015-10-20 14:26:23 324

原创 组合索引,索引内过滤

oadb01:/home/oracle/sbin> sqlplus query/querySQL*Plus: Release 11.2.0.4.0 Production on 星期二 10月 20 11:16:19 2015Copyright (c) 1982, 2013, Oracle. All rights reserved.Connected to:Oracle Datab

2015-10-20 13:07:42 387

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除