SlideShare uma empresa Scribd logo
MySQL InnoDB Plugin
Wagner Bianchi   É especialista em MySQL e outros servidores de bancos de dados relacionais como Oracle e SQL Server. Formado em Gerenciamento de Bancos de Dados, com MBA em Administração de Empresas pela Fundação Getúlio Vargas e Pós-Graduando em Bancos de Dados pela Universidade Gama Filho do Distrito Federal, possui várias certificações, entre elas a SCMA, SCMDEV, SCMDBA e SCMCDBA. Atualmente é Consultor Sênior em bancos de dados pela  WAGNERBIANCHI.COM .
Agenda InnoDB Plugin e Built-in ; Performance Tuning: Buffer Pool; Variáveis de Ambiente; Variáveis de Status; Monitoramento de Performance; Novas Funcionalidades: InnoDB FullText Search – MySQL 5.6; InnoDB MEMCACHED – MySQL 5.6; INFORMATION_SCHEMA tables – 5.6;
MySQL Architecture
InnoDB Plugin MySQL Server 1º camada do servidor InnoDB Plugin
InnoDB Plugin x Built-In Plugin disponibilizado durante ainda no MySQL 5.1; Desenvolvimento “ dividir e conquistar ”; Era necessário instalar: INSTALL PLUGIN ... ;  Variável de ambiente  plugin_dir  ( /usr/lib/mysql/plugin ); InnoDB Built-In com boa escala para aquele momento; Questões relacionadas com o aumento dos serviços web; Geração frenética de informação pelas organizações; Necessidade de processamento rápido e escalável; Nova tendência de mercado – escala horizontal, organização de dados de forma não estruturada;
InnoDB Plugin x Built-In Features Plugin Built-In Shared Tablespace Sim Sim File Per Table Estável Instável Processing Scale-Up + 8 cores até 8 cores Adaptive Hash Index Sim Não Compressão de dados Sim Não Fast Index Creation Sim  Não Controle de Estimativa de Estatísticas Sim Não BARRACUDA file format Sim Não Multiple Commit Threads Sim Não Group Commit Sim Não Buffer Pool Multiple Instances Sim Não INFORMATION_SCHEMA tables Sim Não
InnoDB Plugin x Built-In
Performance Tuning Buffer Pool Área de memória que armazena dados e índices InnoDB; Trabalha com o algoritmo LRU ( Least Recently Used ) onde este controla uma lista com duas sub-listas: Head ,  Young   ou   New   – sub-lista com blocos de dados acessados /utilizados recentemente; Tail  ou  Old  – sub-lista que armazena blocos dados que não foram acessados recentemente e que serão despejados da memória caso continuem não sendo utilizados; Utiliza um processo chamado de “ eviction ” para despejar páginas não utilizadas da memória, dando lugar para novas páginas que chegam.
Performance Tuning innodb_buffer_pool_size=2G innodb_buffer_pool_instances=2 EXT01 EXT02 EXT03 BPoolInst01 BPoolInst02 EXT01 EXT02 EXT03
Performance Tuning
Performance Tuning Buffer Pool O InnoDB Buffer Pool é configurado através das seguintes variáveis de ambiente: innodb_buffer_pool_size Poderá ser configurado com até 80% da memória disponível na máquina servidora na qual o MySQL roda; innodb_buffer_pool_size_instances Cada instância deverá contar com o mínimo de 1GB de espaço para ser possível o particionamento do Buffer Pool; O comportamento do LRU poderá ser configurado através das seguintes variáveis de ambiente: innodb_old_blocks_pct innodb_old_blocks_time
Performance Tuning Buffer Pool – Monitoramento ---------------------- BUFFER POOL AND MEMORY ---------------------- Total memory allocated 8791261184; in additional pool allocated 0 Buffer pool size  524288 Free buffers  0 Database pages  524203 Old database pages 193484 Modified db pages  0 Pending reads 0 Pending writes: LRU 0, flush list 0, single page 0 Pages made young 6878082, not young 0 0.00 youngs/s, 0.00 non-youngs/s Pages read 7181405, created 2327676, written 2436786 0.00 reads/s, 0.00 creates/s, 0.44 writes/s Buffer pool hit rate 1000 / 1000, young-making rate 0 / 1000 not 0 / 1000 LRU len: 524203, unzip_LRU len: 0 I/O sum[134]:cur[0], unzip sum[0]:cur[0]
Performance Tuning Buffer Pool – Monitoramento A cada  15 segundos  um novo resultado de monitoramento do InnoDB, de Locks e do Tablespace (compartilhado) do InnoDB será gravado no log de erros do MySQL ou será impresso no mysql client; mysql> CREATE TABLE mysql.innodb_monitor (i int) ENGINE=InnoDB; Query OK, 0 rows affected (0.24 sec) mysql> CREATE TABLE mysql.innodb_lock_monitor (i int) ENGINE=InnoDB; Query OK, 0 rows affected (0.01 sec) mysql> CREATE TABLE mysql.innodb_tablespace__monitor (i int) ENGINE=InnoDB; Query OK, 0 rows affected (0.00 sec)
Performance Tuning [root@mgm01 ~]# cat mysqld.err | less ===================================== 111129 22:45:56 INNODB MONITOR OUTPUT ===================================== Per second averages calculated from the last 20 seconds ----------------- BACKGROUND THREAD ----------------- srv_master_thread loops: 4 1_second, 4 sleeps, 0 10_second, 7 background, 7 flush srv_master_thread log flush and writes: 4 ---------- SEMAPHORES ---------- OS WAIT ARRAY INFO: reservation count 4, signal count 4 Mutex spin waits 2, rounds 60, OS waits 0 RW-shared spins 5, rounds 150, OS waits 4 RW-excl spins 0, rounds 0, OS waits 0 Spin rounds per wait: 30.00 mutex, 30.00 RW-shared, 0.00 RW-excl :
Performance Tuning Variáveis de Ambiente innodb_flush_method = [ O_DIRECT | O_DSYNC ] O_DIRECT , estável e já disponível em MS Win e Unix Like systems; O_SYNC , mais rápido, instável, problemas com  double write ; innodb_max_dirty_pages_pct = % - (default 90) Quantidade de páginas sujas que serão acumuladas antes do processo de flush, que esvaziará essa área do buffer pool em disco, aplicando as alterações de dados nos arquivos de dados em disco; innodb_read_io_threads = 1 ... 64 – default 4 Número de threads para ler blocos de dados ainda não carregados na memória – início da estratégia de  read-ahead  (leitura *sequêncial); innodb_write_io_threads =  1 ... 64 – default 4 Número de threads destinadas às escritas de páginas sujas em disco – caso o valor seja maior que 4, innodb_flush_method =  O_DIRECT ;
Performance Tuning Variáveis de Ambiente innodb_max_merge_io = 1 ... 64 – default 64 Quantidade de requisições de recuperação de blocos que fazem parte de uma mesma página que podem estar separados entre memória (buffer pool) e disco – quanto mais blocos de uma mesma extensão estiver em buffer, melhor é para realização de  sequential read-ahead ; innodb_flush_log_at_trx_commit = [0,1,2] – default 1 Determina como o arquivo de log será aberto e as páginas sujas escritas em tais arquivos, ou “a cada COMMIT”, ou “a cada COMMIT e de tempos em tempos” ou ainda somente de “tempos em tempos”; innodb_additional_mem_pool_size = 1M – default Interessante que o dicionário de dados ou metadados do InnoDB permaneça também em memória, facilitando as consultas que possam ser realizadas ao mesmo;
Performance Tuning Variáveis de Ambiente innodb_log_buffer_size = 8M – default Quantidade de logs que serão armazenados até que um flush seja realizado.  Para bancos que são alvos de grandes transações, interessantes ter esta área maior para suportar armazenar mais logs em memória, realizar o COMMIT e então ir para o disco – o contrário será pressão de I/O sentida pela hardware do servidor; innodb_file_format  = [ANTELOPE | BARRACUDA] Caso esteja utilizando MySQL 5.5, sem dúvida é interessante alterar o formato de arquivo para BARRACUDA, fast index creation, data compression... innodb_file_per_table  = OFF – default Para utilizar a compressão de dados e outros recursos do InnoDB Plugin  1.0.0 ++ com o MySQL 5.5, condição  sine-qua-non !
Performance Tuning As  variáveis de status  são contadores em tempo real das operações realizadas no MySQL; Todas as áreas do MySQL estão cobertas; Se apresentam como contadores Bytes; Quantidade de vezes; São consultadas com  SHOW STATUS Sintaxe aceita o operador  LIKE mysql> SHOW STATUS LIKE 'innodb_buffer_pool%'; ... 13 rows in set (0.08 sec)
Performance Tuning mysql> SHOW STATUS LIKE 'innodb_buffer_pool%'; +---------------------------------------+-----------+ | Variable_name  | Value  | +---------------------------------------+-----------+ | Innodb_buffer_pool_pages_data  | 524114  | | Innodb_buffer_pool_pages_dirty  | 3  | | Innodb_buffer_pool_pages_flushed  | 1752442  | | Innodb_buffer_pool_pages_free  | 0  | | Innodb_buffer_pool_pages_misc  | 174  | | Innodb_buffer_pool_pages_total  | 524288  | | Innodb_buffer_pool_read_ahead_rnd  | 0  | | Innodb_buffer_pool_read_ahead  | 3246072  | | Innodb_buffer_pool_read_ahead_evicted | 570  | | Innodb_buffer_pool_read_requests  | 369360364 | | Innodb_buffer_pool_reads  | 18141  | | Innodb_buffer_pool_wait_free  | 0  | | Innodb_buffer_pool_write_requests  | 53387370  | +---------------------------------------+-----------+ 13 rows in set (0.08 sec)
Performance Tuning
Performance Tuning Logs de Transação Interessante que não se trabalhe com o tamanho nem a quantidade de logs padrão de instalação; A soma da quantidade de arquivos vezes o espaço que cada um deles têm não pode ser maior ou igual à 4GB; Verifique a variável de status  Innodb_log_waits  para saber se os logs estão pequenos para a operação atual; mysql> SHOW STATUS LIKE 'innodb_log_waits'; +------------------+-------+ | Variable_name  | Value | +------------------+-------+ | Innodb_log_waits | 21  | +------------------+-------+ 1 row in set (0.00 sec)
Performance Tuning Logs de Transação Para alterar os logs de transação, utilize sua janela de manutenção e após um  backup full , pare o MySQL, mova ou remova os logs atuais e reconfigure este comportamento no arquivo de configurações – my.cnf: [mysqld] # logs criados em /var/lib/mysql innodb_log_file_size  = 768M innodb_log_files_in_group  = 4 # criando logs em outro path # innodb_log_group_home_dir = /disk2/innologs
MySQL 5.6 O que vem por aí!
Thank you...

Mais conteúdo relacionado

Mais procurados

Hardware apresentação 6 - proc. intel
Hardware   apresentação 6 - proc. intelHardware   apresentação 6 - proc. intel
Hardware apresentação 6 - proc. intel
Luiz Pereira de Souza
 
Oracle Day - Produtos de banco de dados
Oracle Day - Produtos de banco de dadosOracle Day - Produtos de banco de dados
Oracle Day - Produtos de banco de dados
Rodrigo Almeida
 
Análise de Performance do MySQL e MariaDB
Análise de Performance do MySQL e MariaDBAnálise de Performance do MySQL e MariaDB
Análise de Performance do MySQL e MariaDB
Saveincloud
 
Treinamento Data Guard
Treinamento Data GuardTreinamento Data Guard
Treinamento Data Guard
Douglas Paiva de Sousa
 
Hardware apresentação 5 - cpu e sockets
Hardware   apresentação 5 - cpu e socketsHardware   apresentação 5 - cpu e sockets
Hardware apresentação 5 - cpu e sockets
Luiz Pereira de Souza
 
TechEd 2009: Planejamento e Operação de Ambientes SharePoint Multi-Terabyte
TechEd 2009: Planejamento e Operação de Ambientes SharePoint Multi-TerabyteTechEd 2009: Planejamento e Operação de Ambientes SharePoint Multi-Terabyte
TechEd 2009: Planejamento e Operação de Ambientes SharePoint Multi-Terabyte
Fabrício Catae
 
TechEd 2010: Escalando aplicações OLTP:Design de aplicação e considerações pa...
TechEd 2010: Escalando aplicações OLTP:Design de aplicação e considerações pa...TechEd 2010: Escalando aplicações OLTP:Design de aplicação e considerações pa...
TechEd 2010: Escalando aplicações OLTP:Design de aplicação e considerações pa...
Fabrício Catae
 
4081 my sql
4081 my sql4081 my sql
4081 my sql
schriscar
 
Treinamento RMAN Workshop 12c
Treinamento RMAN Workshop 12cTreinamento RMAN Workshop 12c
Treinamento RMAN Workshop 12c
Douglas Paiva de Sousa
 
Treinamento DBA Essential
Treinamento DBA EssentialTreinamento DBA Essential
Treinamento DBA Essential
Douglas Paiva de Sousa
 
Desktop Linux na Tranquilidade
Desktop Linux na TranquilidadeDesktop Linux na Tranquilidade
Desktop Linux na Tranquilidade
Rui Lapa
 
Windows Server 2008 vs Windows Server 2003
Windows Server 2008 vs Windows Server 2003Windows Server 2008 vs Windows Server 2003
Windows Server 2008 vs Windows Server 2003
Igor Domingos
 
Componentes de Hardware e Servidores
Componentes de Hardware e ServidoresComponentes de Hardware e Servidores
Componentes de Hardware e Servidores
tiredes
 
Estratégia de backup - RMAN
Estratégia de backup - RMANEstratégia de backup - RMAN
Estratégia de backup - RMAN
Eduardo Legatti
 
Portabilidade CorporeRM - 11.00
Portabilidade CorporeRM - 11.00Portabilidade CorporeRM - 11.00
Portabilidade CorporeRM - 11.00
HBB Consultoria
 
Oracle 11g – Inteligência em Banco de Dados
Oracle 11g – Inteligência em Banco de DadosOracle 11g – Inteligência em Banco de Dados
Oracle 11g – Inteligência em Banco de Dados
Daniela Macedo
 
planejamento pre-instalacao win server 2012
 planejamento pre-instalacao win server 2012 planejamento pre-instalacao win server 2012
planejamento pre-instalacao win server 2012
Yan Ferrari Ferreira
 
Oracle OEM Grid Control 11g
Oracle OEM Grid Control 11gOracle OEM Grid Control 11g
Oracle OEM Grid Control 11g
Rodrigo Almeida
 
Hardware aula5
Hardware aula5Hardware aula5
Hardware aula5
Lucas Bernardo
 
Windowsserver2008r2 140928162051-phpapp02
Windowsserver2008r2 140928162051-phpapp02Windowsserver2008r2 140928162051-phpapp02
Windowsserver2008r2 140928162051-phpapp02
Juliana Borges
 

Mais procurados (20)

Hardware apresentação 6 - proc. intel
Hardware   apresentação 6 - proc. intelHardware   apresentação 6 - proc. intel
Hardware apresentação 6 - proc. intel
 
Oracle Day - Produtos de banco de dados
Oracle Day - Produtos de banco de dadosOracle Day - Produtos de banco de dados
Oracle Day - Produtos de banco de dados
 
Análise de Performance do MySQL e MariaDB
Análise de Performance do MySQL e MariaDBAnálise de Performance do MySQL e MariaDB
Análise de Performance do MySQL e MariaDB
 
Treinamento Data Guard
Treinamento Data GuardTreinamento Data Guard
Treinamento Data Guard
 
Hardware apresentação 5 - cpu e sockets
Hardware   apresentação 5 - cpu e socketsHardware   apresentação 5 - cpu e sockets
Hardware apresentação 5 - cpu e sockets
 
TechEd 2009: Planejamento e Operação de Ambientes SharePoint Multi-Terabyte
TechEd 2009: Planejamento e Operação de Ambientes SharePoint Multi-TerabyteTechEd 2009: Planejamento e Operação de Ambientes SharePoint Multi-Terabyte
TechEd 2009: Planejamento e Operação de Ambientes SharePoint Multi-Terabyte
 
TechEd 2010: Escalando aplicações OLTP:Design de aplicação e considerações pa...
TechEd 2010: Escalando aplicações OLTP:Design de aplicação e considerações pa...TechEd 2010: Escalando aplicações OLTP:Design de aplicação e considerações pa...
TechEd 2010: Escalando aplicações OLTP:Design de aplicação e considerações pa...
 
4081 my sql
4081 my sql4081 my sql
4081 my sql
 
Treinamento RMAN Workshop 12c
Treinamento RMAN Workshop 12cTreinamento RMAN Workshop 12c
Treinamento RMAN Workshop 12c
 
Treinamento DBA Essential
Treinamento DBA EssentialTreinamento DBA Essential
Treinamento DBA Essential
 
Desktop Linux na Tranquilidade
Desktop Linux na TranquilidadeDesktop Linux na Tranquilidade
Desktop Linux na Tranquilidade
 
Windows Server 2008 vs Windows Server 2003
Windows Server 2008 vs Windows Server 2003Windows Server 2008 vs Windows Server 2003
Windows Server 2008 vs Windows Server 2003
 
Componentes de Hardware e Servidores
Componentes de Hardware e ServidoresComponentes de Hardware e Servidores
Componentes de Hardware e Servidores
 
Estratégia de backup - RMAN
Estratégia de backup - RMANEstratégia de backup - RMAN
Estratégia de backup - RMAN
 
Portabilidade CorporeRM - 11.00
Portabilidade CorporeRM - 11.00Portabilidade CorporeRM - 11.00
Portabilidade CorporeRM - 11.00
 
Oracle 11g – Inteligência em Banco de Dados
Oracle 11g – Inteligência em Banco de DadosOracle 11g – Inteligência em Banco de Dados
Oracle 11g – Inteligência em Banco de Dados
 
planejamento pre-instalacao win server 2012
 planejamento pre-instalacao win server 2012 planejamento pre-instalacao win server 2012
planejamento pre-instalacao win server 2012
 
Oracle OEM Grid Control 11g
Oracle OEM Grid Control 11gOracle OEM Grid Control 11g
Oracle OEM Grid Control 11g
 
Hardware aula5
Hardware aula5Hardware aula5
Hardware aula5
 
Windowsserver2008r2 140928162051-phpapp02
Windowsserver2008r2 140928162051-phpapp02Windowsserver2008r2 140928162051-phpapp02
Windowsserver2008r2 140928162051-phpapp02
 

Semelhante a InnoDB Plugin - II Fórum da Comunidade MySQL

Introdução ao MySQL 5.6
Introdução ao MySQL 5.6Introdução ao MySQL 5.6
Introdução ao MySQL 5.6
Wagner Bianchi
 
Oracle Exadata - Consolidação & Migração
Oracle Exadata - Consolidação & MigraçãoOracle Exadata - Consolidação & Migração
Oracle Exadata - Consolidação & Migração
Rodrigo Almeida
 
Cloud Mysql e MariaDB em alta performance
Cloud Mysql e MariaDB em alta performanceCloud Mysql e MariaDB em alta performance
Cloud Mysql e MariaDB em alta performance
Saveincloud
 
Datawarehouse - Obtenha insights consistentes para o seu negócio: conheça o n...
Datawarehouse - Obtenha insights consistentes para o seu negócio: conheça o n...Datawarehouse - Obtenha insights consistentes para o seu negócio: conheça o n...
Datawarehouse - Obtenha insights consistentes para o seu negócio: conheça o n...
iMasters
 
DB2 bufferpool Pagefixing por Alvaro Salla
DB2 bufferpool Pagefixing  por Alvaro SallaDB2 bufferpool Pagefixing  por Alvaro Salla
DB2 bufferpool Pagefixing por Alvaro Salla
Joao Galdino Mello de Souza
 
Dicas para Turbinar o servidor de Aplicações JBoss 7
Dicas para Turbinar o servidor de Aplicações JBoss 7Dicas para Turbinar o servidor de Aplicações JBoss 7
Dicas para Turbinar o servidor de Aplicações JBoss 7
Claudio Miranda
 
Arquiteturas de referência MySQL
Arquiteturas de referência MySQLArquiteturas de referência MySQL
Arquiteturas de referência MySQL
MySQL Brasil
 
UNIFAL - MySQL Logs - 5.0/5.6
UNIFAL - MySQL Logs - 5.0/5.6UNIFAL - MySQL Logs - 5.0/5.6
UNIFAL - MySQL Logs - 5.0/5.6
Wagner Bianchi
 
TechEd_OFC302
TechEd_OFC302TechEd_OFC302
TechEd_OFC302
Rodolfo Roim
 
2º trabalho de base dados
2º trabalho de base dados2º trabalho de base dados
2º trabalho de base dados
essa
 
Apresentação IDMS DC / DB COMPONENTS RESOURCES
Apresentação IDMS DC / DB COMPONENTS RESOURCESApresentação IDMS DC / DB COMPONENTS RESOURCES
Apresentação IDMS DC / DB COMPONENTS RESOURCES
SergioBernardes11
 
Performance no MongoDB - TDC 2017 | Florianópolis
Performance no MongoDB - TDC 2017 | FlorianópolisPerformance no MongoDB - TDC 2017 | Florianópolis
Performance no MongoDB - TDC 2017 | Florianópolis
Jefferson Martins de Andrade
 
MySQL - visão geral
MySQL - visão geralMySQL - visão geral
MySQL - visão geral
Airton Lastori
 
Sql Server
Sql ServerSql Server
Sql Server
Sabrina Mariana
 
Otimizando a performance com in-memory no SQL 2016
Otimizando a performance com in-memory no SQL 2016Otimizando a performance com in-memory no SQL 2016
Otimizando a performance com in-memory no SQL 2016
Luiz Henrique Garetti Rosário
 
Dicas e Truques de Performance: Como obter o maximo do Windows Server 2008 R2...
Dicas e Truques de Performance: Como obter o maximo do Windows Server 2008 R2...Dicas e Truques de Performance: Como obter o maximo do Windows Server 2008 R2...
Dicas e Truques de Performance: Como obter o maximo do Windows Server 2008 R2...
Rodrigo Immaginario
 
Forefront TMG - Planejando corretamente
Forefront TMG - Planejando corretamenteForefront TMG - Planejando corretamente
Forefront TMG - Planejando corretamente
Uilson Souza
 
Novidades do Universo MySQL Maio 2014
Novidades do Universo MySQL Maio 2014Novidades do Universo MySQL Maio 2014
Novidades do Universo MySQL Maio 2014
MySQL Brasil
 
PostgreSQL Tuning: O elefante mais rápido que um leopardo
PostgreSQL Tuning: O elefante mais rápido que um leopardoPostgreSQL Tuning: O elefante mais rápido que um leopardo
PostgreSQL Tuning: O elefante mais rápido que um leopardo
elliando dias
 
Design Patterns para Tuning Pentaho com Ctools
Design Patterns para Tuning Pentaho com CtoolsDesign Patterns para Tuning Pentaho com Ctools
Design Patterns para Tuning Pentaho com Ctools
e-Setorial
 

Semelhante a InnoDB Plugin - II Fórum da Comunidade MySQL (20)

Introdução ao MySQL 5.6
Introdução ao MySQL 5.6Introdução ao MySQL 5.6
Introdução ao MySQL 5.6
 
Oracle Exadata - Consolidação & Migração
Oracle Exadata - Consolidação & MigraçãoOracle Exadata - Consolidação & Migração
Oracle Exadata - Consolidação & Migração
 
Cloud Mysql e MariaDB em alta performance
Cloud Mysql e MariaDB em alta performanceCloud Mysql e MariaDB em alta performance
Cloud Mysql e MariaDB em alta performance
 
Datawarehouse - Obtenha insights consistentes para o seu negócio: conheça o n...
Datawarehouse - Obtenha insights consistentes para o seu negócio: conheça o n...Datawarehouse - Obtenha insights consistentes para o seu negócio: conheça o n...
Datawarehouse - Obtenha insights consistentes para o seu negócio: conheça o n...
 
DB2 bufferpool Pagefixing por Alvaro Salla
DB2 bufferpool Pagefixing  por Alvaro SallaDB2 bufferpool Pagefixing  por Alvaro Salla
DB2 bufferpool Pagefixing por Alvaro Salla
 
Dicas para Turbinar o servidor de Aplicações JBoss 7
Dicas para Turbinar o servidor de Aplicações JBoss 7Dicas para Turbinar o servidor de Aplicações JBoss 7
Dicas para Turbinar o servidor de Aplicações JBoss 7
 
Arquiteturas de referência MySQL
Arquiteturas de referência MySQLArquiteturas de referência MySQL
Arquiteturas de referência MySQL
 
UNIFAL - MySQL Logs - 5.0/5.6
UNIFAL - MySQL Logs - 5.0/5.6UNIFAL - MySQL Logs - 5.0/5.6
UNIFAL - MySQL Logs - 5.0/5.6
 
TechEd_OFC302
TechEd_OFC302TechEd_OFC302
TechEd_OFC302
 
2º trabalho de base dados
2º trabalho de base dados2º trabalho de base dados
2º trabalho de base dados
 
Apresentação IDMS DC / DB COMPONENTS RESOURCES
Apresentação IDMS DC / DB COMPONENTS RESOURCESApresentação IDMS DC / DB COMPONENTS RESOURCES
Apresentação IDMS DC / DB COMPONENTS RESOURCES
 
Performance no MongoDB - TDC 2017 | Florianópolis
Performance no MongoDB - TDC 2017 | FlorianópolisPerformance no MongoDB - TDC 2017 | Florianópolis
Performance no MongoDB - TDC 2017 | Florianópolis
 
MySQL - visão geral
MySQL - visão geralMySQL - visão geral
MySQL - visão geral
 
Sql Server
Sql ServerSql Server
Sql Server
 
Otimizando a performance com in-memory no SQL 2016
Otimizando a performance com in-memory no SQL 2016Otimizando a performance com in-memory no SQL 2016
Otimizando a performance com in-memory no SQL 2016
 
Dicas e Truques de Performance: Como obter o maximo do Windows Server 2008 R2...
Dicas e Truques de Performance: Como obter o maximo do Windows Server 2008 R2...Dicas e Truques de Performance: Como obter o maximo do Windows Server 2008 R2...
Dicas e Truques de Performance: Como obter o maximo do Windows Server 2008 R2...
 
Forefront TMG - Planejando corretamente
Forefront TMG - Planejando corretamenteForefront TMG - Planejando corretamente
Forefront TMG - Planejando corretamente
 
Novidades do Universo MySQL Maio 2014
Novidades do Universo MySQL Maio 2014Novidades do Universo MySQL Maio 2014
Novidades do Universo MySQL Maio 2014
 
PostgreSQL Tuning: O elefante mais rápido que um leopardo
PostgreSQL Tuning: O elefante mais rápido que um leopardoPostgreSQL Tuning: O elefante mais rápido que um leopardo
PostgreSQL Tuning: O elefante mais rápido que um leopardo
 
Design Patterns para Tuning Pentaho com Ctools
Design Patterns para Tuning Pentaho com CtoolsDesign Patterns para Tuning Pentaho com Ctools
Design Patterns para Tuning Pentaho com Ctools
 

Mais de Wagner Bianchi

Migrations from PLSQL and Transact-SQL - m18
Migrations from PLSQL and Transact-SQL - m18Migrations from PLSQL and Transact-SQL - m18
Migrations from PLSQL and Transact-SQL - m18
Wagner Bianchi
 
Maxscale switchover, failover, and auto rejoin
Maxscale switchover, failover, and auto rejoinMaxscale switchover, failover, and auto rejoin
Maxscale switchover, failover, and auto rejoin
Wagner Bianchi
 
Meetup São Paulo, Maxscale Implementação e Casos de Uso
Meetup São Paulo, Maxscale Implementação e Casos de UsoMeetup São Paulo, Maxscale Implementação e Casos de Uso
Meetup São Paulo, Maxscale Implementação e Casos de Uso
Wagner Bianchi
 
Escalando o ambiente com MariaDB Cluster (Portuguese Edition)
Escalando o ambiente com MariaDB Cluster (Portuguese Edition)Escalando o ambiente com MariaDB Cluster (Portuguese Edition)
Escalando o ambiente com MariaDB Cluster (Portuguese Edition)
Wagner Bianchi
 
NY Meetup: Scaling MariaDB with Maxscale
NY Meetup: Scaling MariaDB with MaxscaleNY Meetup: Scaling MariaDB with Maxscale
NY Meetup: Scaling MariaDB with Maxscale
Wagner Bianchi
 
Webinar: MariaDB Provides the Solution to Ease Multi-Source Replication
Webinar: MariaDB Provides the Solution to Ease Multi-Source ReplicationWebinar: MariaDB Provides the Solution to Ease Multi-Source Replication
Webinar: MariaDB Provides the Solution to Ease Multi-Source Replication
Wagner Bianchi
 
MySQL Multi-Source Replication for PL2016
MySQL Multi-Source Replication for PL2016MySQL Multi-Source Replication for PL2016
MySQL Multi-Source Replication for PL2016
Wagner Bianchi
 
MySQL 5.7 Multi-Source Replication
MySQL 5.7 Multi-Source ReplicationMySQL 5.7 Multi-Source Replication
MySQL 5.7 Multi-Source Replication
Wagner Bianchi
 
UNIFAL - MySQL 5.6 - Replicação
UNIFAL - MySQL 5.6 - ReplicaçãoUNIFAL - MySQL 5.6 - Replicação
UNIFAL - MySQL 5.6 - Replicação
Wagner Bianchi
 
UNIFAL - MySQL Transações - 5.0/5.6
UNIFAL - MySQL Transações - 5.0/5.6UNIFAL - MySQL Transações - 5.0/5.6
UNIFAL - MySQL Transações - 5.0/5.6
Wagner Bianchi
 
UNIFAL - MySQL Storage Engine - 5.0/5.6
UNIFAL - MySQL Storage Engine - 5.0/5.6UNIFAL - MySQL Storage Engine - 5.0/5.6
UNIFAL - MySQL Storage Engine - 5.0/5.6
Wagner Bianchi
 
UNIFAL - MySQL Views - 5.0/5.6
UNIFAL - MySQL Views - 5.0/5.6UNIFAL - MySQL Views - 5.0/5.6
UNIFAL - MySQL Views - 5.0/5.6
Wagner Bianchi
 
UNIFAL - MySQL Triggers - 5.0/5.6
UNIFAL - MySQL Triggers - 5.0/5.6UNIFAL - MySQL Triggers - 5.0/5.6
UNIFAL - MySQL Triggers - 5.0/5.6
Wagner Bianchi
 
UNIFAL - MySQL Stored Routines - 5.0/5.6
UNIFAL - MySQL Stored Routines - 5.0/5.6UNIFAL - MySQL Stored Routines - 5.0/5.6
UNIFAL - MySQL Stored Routines - 5.0/5.6
Wagner Bianchi
 
UNIFAL - MySQL Linguagem SQL Básico - 5.0/5.6
UNIFAL - MySQL Linguagem SQL Básico - 5.0/5.6UNIFAL - MySQL Linguagem SQL Básico - 5.0/5.6
UNIFAL - MySQL Linguagem SQL Básico - 5.0/5.6
Wagner Bianchi
 
UNIFAL - MySQL & Vagrant (iniciando os trabalhos)
UNIFAL - MySQL & Vagrant (iniciando os trabalhos)UNIFAL - MySQL & Vagrant (iniciando os trabalhos)
UNIFAL - MySQL & Vagrant (iniciando os trabalhos)
Wagner Bianchi
 
Wagner Bianchi, GUOB 2014 MySQL Cluster 7.3
Wagner Bianchi, GUOB 2014 MySQL Cluster 7.3Wagner Bianchi, GUOB 2014 MySQL Cluster 7.3
Wagner Bianchi, GUOB 2014 MySQL Cluster 7.3
Wagner Bianchi
 
Mysql for IBMers
Mysql for IBMersMysql for IBMers
Mysql for IBMers
Wagner Bianchi
 
MySQL Cluster Product Overview
MySQL Cluster Product OverviewMySQL Cluster Product Overview
MySQL Cluster Product Overview
Wagner Bianchi
 
MySQL Cluster Basics
MySQL Cluster BasicsMySQL Cluster Basics
MySQL Cluster Basics
Wagner Bianchi
 

Mais de Wagner Bianchi (20)

Migrations from PLSQL and Transact-SQL - m18
Migrations from PLSQL and Transact-SQL - m18Migrations from PLSQL and Transact-SQL - m18
Migrations from PLSQL and Transact-SQL - m18
 
Maxscale switchover, failover, and auto rejoin
Maxscale switchover, failover, and auto rejoinMaxscale switchover, failover, and auto rejoin
Maxscale switchover, failover, and auto rejoin
 
Meetup São Paulo, Maxscale Implementação e Casos de Uso
Meetup São Paulo, Maxscale Implementação e Casos de UsoMeetup São Paulo, Maxscale Implementação e Casos de Uso
Meetup São Paulo, Maxscale Implementação e Casos de Uso
 
Escalando o ambiente com MariaDB Cluster (Portuguese Edition)
Escalando o ambiente com MariaDB Cluster (Portuguese Edition)Escalando o ambiente com MariaDB Cluster (Portuguese Edition)
Escalando o ambiente com MariaDB Cluster (Portuguese Edition)
 
NY Meetup: Scaling MariaDB with Maxscale
NY Meetup: Scaling MariaDB with MaxscaleNY Meetup: Scaling MariaDB with Maxscale
NY Meetup: Scaling MariaDB with Maxscale
 
Webinar: MariaDB Provides the Solution to Ease Multi-Source Replication
Webinar: MariaDB Provides the Solution to Ease Multi-Source ReplicationWebinar: MariaDB Provides the Solution to Ease Multi-Source Replication
Webinar: MariaDB Provides the Solution to Ease Multi-Source Replication
 
MySQL Multi-Source Replication for PL2016
MySQL Multi-Source Replication for PL2016MySQL Multi-Source Replication for PL2016
MySQL Multi-Source Replication for PL2016
 
MySQL 5.7 Multi-Source Replication
MySQL 5.7 Multi-Source ReplicationMySQL 5.7 Multi-Source Replication
MySQL 5.7 Multi-Source Replication
 
UNIFAL - MySQL 5.6 - Replicação
UNIFAL - MySQL 5.6 - ReplicaçãoUNIFAL - MySQL 5.6 - Replicação
UNIFAL - MySQL 5.6 - Replicação
 
UNIFAL - MySQL Transações - 5.0/5.6
UNIFAL - MySQL Transações - 5.0/5.6UNIFAL - MySQL Transações - 5.0/5.6
UNIFAL - MySQL Transações - 5.0/5.6
 
UNIFAL - MySQL Storage Engine - 5.0/5.6
UNIFAL - MySQL Storage Engine - 5.0/5.6UNIFAL - MySQL Storage Engine - 5.0/5.6
UNIFAL - MySQL Storage Engine - 5.0/5.6
 
UNIFAL - MySQL Views - 5.0/5.6
UNIFAL - MySQL Views - 5.0/5.6UNIFAL - MySQL Views - 5.0/5.6
UNIFAL - MySQL Views - 5.0/5.6
 
UNIFAL - MySQL Triggers - 5.0/5.6
UNIFAL - MySQL Triggers - 5.0/5.6UNIFAL - MySQL Triggers - 5.0/5.6
UNIFAL - MySQL Triggers - 5.0/5.6
 
UNIFAL - MySQL Stored Routines - 5.0/5.6
UNIFAL - MySQL Stored Routines - 5.0/5.6UNIFAL - MySQL Stored Routines - 5.0/5.6
UNIFAL - MySQL Stored Routines - 5.0/5.6
 
UNIFAL - MySQL Linguagem SQL Básico - 5.0/5.6
UNIFAL - MySQL Linguagem SQL Básico - 5.0/5.6UNIFAL - MySQL Linguagem SQL Básico - 5.0/5.6
UNIFAL - MySQL Linguagem SQL Básico - 5.0/5.6
 
UNIFAL - MySQL & Vagrant (iniciando os trabalhos)
UNIFAL - MySQL & Vagrant (iniciando os trabalhos)UNIFAL - MySQL & Vagrant (iniciando os trabalhos)
UNIFAL - MySQL & Vagrant (iniciando os trabalhos)
 
Wagner Bianchi, GUOB 2014 MySQL Cluster 7.3
Wagner Bianchi, GUOB 2014 MySQL Cluster 7.3Wagner Bianchi, GUOB 2014 MySQL Cluster 7.3
Wagner Bianchi, GUOB 2014 MySQL Cluster 7.3
 
Mysql for IBMers
Mysql for IBMersMysql for IBMers
Mysql for IBMers
 
MySQL Cluster Product Overview
MySQL Cluster Product OverviewMySQL Cluster Product Overview
MySQL Cluster Product Overview
 
MySQL Cluster Basics
MySQL Cluster BasicsMySQL Cluster Basics
MySQL Cluster Basics
 

Último

Aula combustiveis mais utilizados na indústria
Aula combustiveis mais utilizados na indústriaAula combustiveis mais utilizados na indústria
Aula combustiveis mais utilizados na indústria
zetec10
 
INTELIGÊNCIA ARTIFICIAL + COMPUTAÇÃO QUÂNTICA = MAIOR REVOLUÇÃO TECNOLÓGICA D...
INTELIGÊNCIA ARTIFICIAL + COMPUTAÇÃO QUÂNTICA = MAIOR REVOLUÇÃO TECNOLÓGICA D...INTELIGÊNCIA ARTIFICIAL + COMPUTAÇÃO QUÂNTICA = MAIOR REVOLUÇÃO TECNOLÓGICA D...
INTELIGÊNCIA ARTIFICIAL + COMPUTAÇÃO QUÂNTICA = MAIOR REVOLUÇÃO TECNOLÓGICA D...
Faga1939
 
se38_layout_erro_xxxxxxxxxxxxxxxxxx.docx
se38_layout_erro_xxxxxxxxxxxxxxxxxx.docxse38_layout_erro_xxxxxxxxxxxxxxxxxx.docx
se38_layout_erro_xxxxxxxxxxxxxxxxxx.docx
ronaldos10
 
Apresentação sobre Deep Web e anonimização
Apresentação sobre Deep Web e anonimizaçãoApresentação sobre Deep Web e anonimização
Apresentação sobre Deep Web e anonimização
snerdct
 
Ferramentas que irão te ajudar a entrar no mundo de DevOps/CLoud
Ferramentas que irão te ajudar a entrar no mundo de   DevOps/CLoudFerramentas que irão te ajudar a entrar no mundo de   DevOps/CLoud
Ferramentas que irão te ajudar a entrar no mundo de DevOps/CLoud
Ismael Ash
 
Subindo uma aplicação WordPress em docker na AWS
Subindo uma aplicação WordPress em docker na AWSSubindo uma aplicação WordPress em docker na AWS
Subindo uma aplicação WordPress em docker na AWS
Ismael Ash
 

Último (6)

Aula combustiveis mais utilizados na indústria
Aula combustiveis mais utilizados na indústriaAula combustiveis mais utilizados na indústria
Aula combustiveis mais utilizados na indústria
 
INTELIGÊNCIA ARTIFICIAL + COMPUTAÇÃO QUÂNTICA = MAIOR REVOLUÇÃO TECNOLÓGICA D...
INTELIGÊNCIA ARTIFICIAL + COMPUTAÇÃO QUÂNTICA = MAIOR REVOLUÇÃO TECNOLÓGICA D...INTELIGÊNCIA ARTIFICIAL + COMPUTAÇÃO QUÂNTICA = MAIOR REVOLUÇÃO TECNOLÓGICA D...
INTELIGÊNCIA ARTIFICIAL + COMPUTAÇÃO QUÂNTICA = MAIOR REVOLUÇÃO TECNOLÓGICA D...
 
se38_layout_erro_xxxxxxxxxxxxxxxxxx.docx
se38_layout_erro_xxxxxxxxxxxxxxxxxx.docxse38_layout_erro_xxxxxxxxxxxxxxxxxx.docx
se38_layout_erro_xxxxxxxxxxxxxxxxxx.docx
 
Apresentação sobre Deep Web e anonimização
Apresentação sobre Deep Web e anonimizaçãoApresentação sobre Deep Web e anonimização
Apresentação sobre Deep Web e anonimização
 
Ferramentas que irão te ajudar a entrar no mundo de DevOps/CLoud
Ferramentas que irão te ajudar a entrar no mundo de   DevOps/CLoudFerramentas que irão te ajudar a entrar no mundo de   DevOps/CLoud
Ferramentas que irão te ajudar a entrar no mundo de DevOps/CLoud
 
Subindo uma aplicação WordPress em docker na AWS
Subindo uma aplicação WordPress em docker na AWSSubindo uma aplicação WordPress em docker na AWS
Subindo uma aplicação WordPress em docker na AWS
 

InnoDB Plugin - II Fórum da Comunidade MySQL

  • 2. Wagner Bianchi   É especialista em MySQL e outros servidores de bancos de dados relacionais como Oracle e SQL Server. Formado em Gerenciamento de Bancos de Dados, com MBA em Administração de Empresas pela Fundação Getúlio Vargas e Pós-Graduando em Bancos de Dados pela Universidade Gama Filho do Distrito Federal, possui várias certificações, entre elas a SCMA, SCMDEV, SCMDBA e SCMCDBA. Atualmente é Consultor Sênior em bancos de dados pela WAGNERBIANCHI.COM .
  • 3. Agenda InnoDB Plugin e Built-in ; Performance Tuning: Buffer Pool; Variáveis de Ambiente; Variáveis de Status; Monitoramento de Performance; Novas Funcionalidades: InnoDB FullText Search – MySQL 5.6; InnoDB MEMCACHED – MySQL 5.6; INFORMATION_SCHEMA tables – 5.6;
  • 5. InnoDB Plugin MySQL Server 1º camada do servidor InnoDB Plugin
  • 6. InnoDB Plugin x Built-In Plugin disponibilizado durante ainda no MySQL 5.1; Desenvolvimento “ dividir e conquistar ”; Era necessário instalar: INSTALL PLUGIN ... ; Variável de ambiente plugin_dir ( /usr/lib/mysql/plugin ); InnoDB Built-In com boa escala para aquele momento; Questões relacionadas com o aumento dos serviços web; Geração frenética de informação pelas organizações; Necessidade de processamento rápido e escalável; Nova tendência de mercado – escala horizontal, organização de dados de forma não estruturada;
  • 7. InnoDB Plugin x Built-In Features Plugin Built-In Shared Tablespace Sim Sim File Per Table Estável Instável Processing Scale-Up + 8 cores até 8 cores Adaptive Hash Index Sim Não Compressão de dados Sim Não Fast Index Creation Sim Não Controle de Estimativa de Estatísticas Sim Não BARRACUDA file format Sim Não Multiple Commit Threads Sim Não Group Commit Sim Não Buffer Pool Multiple Instances Sim Não INFORMATION_SCHEMA tables Sim Não
  • 8. InnoDB Plugin x Built-In
  • 9. Performance Tuning Buffer Pool Área de memória que armazena dados e índices InnoDB; Trabalha com o algoritmo LRU ( Least Recently Used ) onde este controla uma lista com duas sub-listas: Head , Young ou New – sub-lista com blocos de dados acessados /utilizados recentemente; Tail ou Old – sub-lista que armazena blocos dados que não foram acessados recentemente e que serão despejados da memória caso continuem não sendo utilizados; Utiliza um processo chamado de “ eviction ” para despejar páginas não utilizadas da memória, dando lugar para novas páginas que chegam.
  • 10. Performance Tuning innodb_buffer_pool_size=2G innodb_buffer_pool_instances=2 EXT01 EXT02 EXT03 BPoolInst01 BPoolInst02 EXT01 EXT02 EXT03
  • 12. Performance Tuning Buffer Pool O InnoDB Buffer Pool é configurado através das seguintes variáveis de ambiente: innodb_buffer_pool_size Poderá ser configurado com até 80% da memória disponível na máquina servidora na qual o MySQL roda; innodb_buffer_pool_size_instances Cada instância deverá contar com o mínimo de 1GB de espaço para ser possível o particionamento do Buffer Pool; O comportamento do LRU poderá ser configurado através das seguintes variáveis de ambiente: innodb_old_blocks_pct innodb_old_blocks_time
  • 13. Performance Tuning Buffer Pool – Monitoramento ---------------------- BUFFER POOL AND MEMORY ---------------------- Total memory allocated 8791261184; in additional pool allocated 0 Buffer pool size 524288 Free buffers 0 Database pages 524203 Old database pages 193484 Modified db pages 0 Pending reads 0 Pending writes: LRU 0, flush list 0, single page 0 Pages made young 6878082, not young 0 0.00 youngs/s, 0.00 non-youngs/s Pages read 7181405, created 2327676, written 2436786 0.00 reads/s, 0.00 creates/s, 0.44 writes/s Buffer pool hit rate 1000 / 1000, young-making rate 0 / 1000 not 0 / 1000 LRU len: 524203, unzip_LRU len: 0 I/O sum[134]:cur[0], unzip sum[0]:cur[0]
  • 14. Performance Tuning Buffer Pool – Monitoramento A cada 15 segundos um novo resultado de monitoramento do InnoDB, de Locks e do Tablespace (compartilhado) do InnoDB será gravado no log de erros do MySQL ou será impresso no mysql client; mysql> CREATE TABLE mysql.innodb_monitor (i int) ENGINE=InnoDB; Query OK, 0 rows affected (0.24 sec) mysql> CREATE TABLE mysql.innodb_lock_monitor (i int) ENGINE=InnoDB; Query OK, 0 rows affected (0.01 sec) mysql> CREATE TABLE mysql.innodb_tablespace__monitor (i int) ENGINE=InnoDB; Query OK, 0 rows affected (0.00 sec)
  • 15. Performance Tuning [root@mgm01 ~]# cat mysqld.err | less ===================================== 111129 22:45:56 INNODB MONITOR OUTPUT ===================================== Per second averages calculated from the last 20 seconds ----------------- BACKGROUND THREAD ----------------- srv_master_thread loops: 4 1_second, 4 sleeps, 0 10_second, 7 background, 7 flush srv_master_thread log flush and writes: 4 ---------- SEMAPHORES ---------- OS WAIT ARRAY INFO: reservation count 4, signal count 4 Mutex spin waits 2, rounds 60, OS waits 0 RW-shared spins 5, rounds 150, OS waits 4 RW-excl spins 0, rounds 0, OS waits 0 Spin rounds per wait: 30.00 mutex, 30.00 RW-shared, 0.00 RW-excl :
  • 16. Performance Tuning Variáveis de Ambiente innodb_flush_method = [ O_DIRECT | O_DSYNC ] O_DIRECT , estável e já disponível em MS Win e Unix Like systems; O_SYNC , mais rápido, instável, problemas com double write ; innodb_max_dirty_pages_pct = % - (default 90) Quantidade de páginas sujas que serão acumuladas antes do processo de flush, que esvaziará essa área do buffer pool em disco, aplicando as alterações de dados nos arquivos de dados em disco; innodb_read_io_threads = 1 ... 64 – default 4 Número de threads para ler blocos de dados ainda não carregados na memória – início da estratégia de read-ahead (leitura *sequêncial); innodb_write_io_threads = 1 ... 64 – default 4 Número de threads destinadas às escritas de páginas sujas em disco – caso o valor seja maior que 4, innodb_flush_method = O_DIRECT ;
  • 17. Performance Tuning Variáveis de Ambiente innodb_max_merge_io = 1 ... 64 – default 64 Quantidade de requisições de recuperação de blocos que fazem parte de uma mesma página que podem estar separados entre memória (buffer pool) e disco – quanto mais blocos de uma mesma extensão estiver em buffer, melhor é para realização de sequential read-ahead ; innodb_flush_log_at_trx_commit = [0,1,2] – default 1 Determina como o arquivo de log será aberto e as páginas sujas escritas em tais arquivos, ou “a cada COMMIT”, ou “a cada COMMIT e de tempos em tempos” ou ainda somente de “tempos em tempos”; innodb_additional_mem_pool_size = 1M – default Interessante que o dicionário de dados ou metadados do InnoDB permaneça também em memória, facilitando as consultas que possam ser realizadas ao mesmo;
  • 18. Performance Tuning Variáveis de Ambiente innodb_log_buffer_size = 8M – default Quantidade de logs que serão armazenados até que um flush seja realizado. Para bancos que são alvos de grandes transações, interessantes ter esta área maior para suportar armazenar mais logs em memória, realizar o COMMIT e então ir para o disco – o contrário será pressão de I/O sentida pela hardware do servidor; innodb_file_format = [ANTELOPE | BARRACUDA] Caso esteja utilizando MySQL 5.5, sem dúvida é interessante alterar o formato de arquivo para BARRACUDA, fast index creation, data compression... innodb_file_per_table = OFF – default Para utilizar a compressão de dados e outros recursos do InnoDB Plugin 1.0.0 ++ com o MySQL 5.5, condição sine-qua-non !
  • 19. Performance Tuning As variáveis de status são contadores em tempo real das operações realizadas no MySQL; Todas as áreas do MySQL estão cobertas; Se apresentam como contadores Bytes; Quantidade de vezes; São consultadas com SHOW STATUS Sintaxe aceita o operador LIKE mysql> SHOW STATUS LIKE 'innodb_buffer_pool%'; ... 13 rows in set (0.08 sec)
  • 20. Performance Tuning mysql> SHOW STATUS LIKE 'innodb_buffer_pool%'; +---------------------------------------+-----------+ | Variable_name | Value | +---------------------------------------+-----------+ | Innodb_buffer_pool_pages_data | 524114 | | Innodb_buffer_pool_pages_dirty | 3 | | Innodb_buffer_pool_pages_flushed | 1752442 | | Innodb_buffer_pool_pages_free | 0 | | Innodb_buffer_pool_pages_misc | 174 | | Innodb_buffer_pool_pages_total | 524288 | | Innodb_buffer_pool_read_ahead_rnd | 0 | | Innodb_buffer_pool_read_ahead | 3246072 | | Innodb_buffer_pool_read_ahead_evicted | 570 | | Innodb_buffer_pool_read_requests | 369360364 | | Innodb_buffer_pool_reads | 18141 | | Innodb_buffer_pool_wait_free | 0 | | Innodb_buffer_pool_write_requests | 53387370 | +---------------------------------------+-----------+ 13 rows in set (0.08 sec)
  • 22. Performance Tuning Logs de Transação Interessante que não se trabalhe com o tamanho nem a quantidade de logs padrão de instalação; A soma da quantidade de arquivos vezes o espaço que cada um deles têm não pode ser maior ou igual à 4GB; Verifique a variável de status Innodb_log_waits para saber se os logs estão pequenos para a operação atual; mysql> SHOW STATUS LIKE 'innodb_log_waits'; +------------------+-------+ | Variable_name | Value | +------------------+-------+ | Innodb_log_waits | 21 | +------------------+-------+ 1 row in set (0.00 sec)
  • 23. Performance Tuning Logs de Transação Para alterar os logs de transação, utilize sua janela de manutenção e após um backup full , pare o MySQL, mova ou remova os logs atuais e reconfigure este comportamento no arquivo de configurações – my.cnf: [mysqld] # logs criados em /var/lib/mysql innodb_log_file_size = 768M innodb_log_files_in_group = 4 # criando logs em outro path # innodb_log_group_home_dir = /disk2/innologs
  • 24. MySQL 5.6 O que vem por aí!