SlideShare uma empresa Scribd logo
1 de 60
Baixar para ler offline
<Insert Picture Here>




MySQL no Windows                   Marcos Trujillo
                             marcos.trujillo@oracle.com
implementação eficiente de
                                    Airton Lastori
novas aplicações              airton.lastori@oracle.com

                                               mai-2012
INVESTIMENTOS INIGUALÁVEIS                         InnoDB

                                     REPLICAÇÃO
 MELHORIAS DE PERFORMANCE                         EMBARCADO


                WINDOWS      CENTENAS DE ESPECIALISTAS
CLOUD


                                                     ESTRATÉGICO




SUPORTE DE PRIMEIRA CLASSE                         WEB
                          MySQL CLUSTER
  NoSQL        LINUX          MySQL ENTERPRISE EDITION


      MAIORES TIMES DE ENGENHARIA DO MySQL &
             ORGANIZAÇÃO2DE SUPORTE
Mais Lançamentos de Produtos do que Nunca

     Liderando a
                                 • MySQL Enterprise Backup 3.7
 Inovação do MySQL
                                 • Oracle VM Template for
                                 MySQL Enterprise Edition
• MySQL Enterprise Monitor 2.2                                       • MySQL Cluster 7.2: GA!
                                 • MySQL Enterprise Oracle
• MySQL Cluster 7.1              Certifications
• MySQL Cluster Manager 1.0      • MySQL Windows Installer
• MySQL Workbench 5.2            •MySQL Enterprise Commercial
• MySQL Database 5.5             Extensions
• MySQL Enterprise Backup 3.5           Todos em GA!
• MySQL Enterprise Monitor 2.3
                                 • MySQL Database 5.6 DMR*
• MySQL Cluster Manager 1.1
                                 • MySQL Cluster 7.2 DMR
        Todos em GA!
                                        e MySQL Labs!
                                 “mais cedo e com mais frequência”


                                                            Um MySQL Melhor
                                                         *Development Milestone Release

             2010                            2011                            2012 Q1
                                            3
Portfolio Open Source (GPL)


• MySQL Database (Community Server)         5.5.24 GA e 5.6.5 DMR

• MySQL Cluster (NDB Community) 7.2.6 GA
• MySQL Workbench Community Edition 5.2.40 GA
   • MySQL Utilities (em Python)
• MySQL Connectors
   • ODBC, Java, .Net, C, C++, PHP, OpenOffice
• MySQL Proxy 0.8.2 Alpha
• Documentação: livre para uso, não coberto pela GPL
• Forums
                  dev.mysql.com/downloads

                              4
O MySQL está em todo lugar!




 Web & Enterprise           OEM & ISVs



                    Cloud

                     5
MySQL no Windows – Você sabia?


  • O Windows é a plataforma de
    desenvolvimento #1 para MySQL



  • O Windows é a plataforma #1 de
    implantação para usuários da MySQL
    Community Edition


               forums.mysql.com

                       6
Agenda

• Por que MySQL no Windows?

• MySQL 5.5 = Performance, Confiabilidade, Facilidade de Uso

• Integração com Ambientes Windows Existentes

• Segurança, Escalabilidade, Alta Disponibilidade

• Ferramentas para Desenvolvedores e DBAs

• Suporte Técnico




                              7
Por que MySQL no Windows?
     Menor TCO              Performance




   Multi-Plataforma       Facilidade de Uso




                      8
Por que MySQL no Windows?
     Menor TCO              Performance




   Multi-Plataforma       Facilidade de Uso




                      9
MySQL vs Microsoft SQL Server
          Até 96% de economia no Custo Total de Propriedade

          $1.600.000                                                         $1.539.776

          $1.400.000

          $1.200.000

          $1.000.000
                                                               $769.860
             $800.000
             $600.000
              $400.000                  $60.000
              $200.000
                       $0
                             MySQL Enterprise
                                 Edition      Microsoft SQL Server
                                                2008 Enterprise    Microsoft SQL Server
                                                    Edition          2012 Enterprise
                                                                         Edition
Configuração de Hardware:
- Servidores Intel x86_64: 4, CPUs/Servidor: 4, Cores/CPU: 8                   mysql.com/tcosavings

                                                               10
MySQL Database
     Performance, Confiabilidade, Facilidade de Uso
                                                Gerenciamento
      Suporte às mais
                                                eficiente e multi-
      conhecidas
                                                thread de sessões
      plataformas/linguagens
      de desenvolvimento


Parsing completo
DML+DDL,
otimizador,
baseado em custo,
caching de queries
e resultados



 Várias opções de
 Storage Engine
 para necessidades
 específicas das
 aplicações

                                                Opções flexíveis de
                                                logging e
                                                armazenamento
                                                físico
                               11
Comparação da Arquitetura do MySQL
 Mecanismo                 MySQL       Microsoft SQL Server
Memory Caches    • InnoDB data cache   • Buffer cache
                 • InnoDB log cache    • SQL cache
                 • MyISAM key cache    • Misc caches (lock,
                 • Dictionary cache      connection, workspace,
                 • Query Cache           etc.)
                 • User caches
Redo/Undo Logs   • InnoDB Undo Space   • TempDB (2005+)
                 • InnoDB Logs         • Transaction Logs
                 • Binary Log
Data Storage     • Tablespaces         • Filegroups
                 • Table/Index Files   • Files
                 • Format files
Optimizer        • Cost-based          • Cost-based




                                12
Comparação das funcionalidades “core”
                        Funcionalidade                              MySQL   Microsoft
Índices padrões Heap Tables e B-Tree                                          
Tabelas/Índices Particionados                                                 
Suporte Transações ACID                                                       
Row-Level Locking, MVCC (leituras não bloqueiam escritas)                     
Integridade Referencial Garantidas pelo Servidor                              
Indexação Avançada (Clustered, Full-Text)                                     
Suporte robusto a vários tipos de dados (BLOB’s, varchar,
                                                                              
datetime, numerics, etc.)
Replicação                                                                    
Stored Procedures, Triggers, Functions, Cursors, Updateable Views             
Banco de dados em Cluster para Alta Disponibilidade                           
Otimizador baseado em custo                                                   
Backup Online com Point-in-Time Recovery                                      
Suporta Datasets com Terabytes em tamanho                                     
Open Source                                                          




                                                      13
Por que MySQL no Windows?
     Menor TCO               Performance




   Multi-Plataforma        Facilidade de Uso




                      14
MySQL 5.5: a melhor release até hoje!
InnoDB é o Storage Engine padrão
• Transações ACID, FKs, Crash Recovery

Performance Melhorada
•   Melhorias no MySQL Server
•   Melhorias no InnoDB
•   + 360% sobre 5.1 no Linux
•   + 1500% sobre 5.1 no Windows
Mais Disponibilidade
• Replicação Semi-síncrona
• Replicação Heartbeat
Melhor Usabilidade
• SIGNAL/RESIGNAL
• Mais Opções de Particionamento
• Novo PERFORMANCE_SCHEMA          > 95% de todas aplicações MySQL rodam no InnoDB


                                   15
Otimizações específicas no
MySQL 5.5 para Windows

Melhorias de Performance:
• RW-locks substituídos no MySQL Server pelos RW-
  locks nativos do Windows (Windows 7, Windows
  2008R2 e posteriores).
• Variáveis condicionais no MySQL Server substituídas
  por variáveis condicionais do Windows.
• Incrementos estatísticos substituídos com mutexes
  para fazer uso dos incrementos atômicos nativos do
  Windows.
• Uso de variáveis condicionais nativas do Windows
  Vista e posteriores no InnoDB.


                          16
MySQL Database
SysBench Benchmarks - Windows




                                     MySQL 5.5.6
                                     (Default InnoDB)



                                     MySQL 5.1.50
                                     (InnoDB Plug-in)



                                     MySQL 5.1.50
                                     (InnoDB built-in)




540% ganho de performance           Intel x86_64
                                    4 CPU x 2 Cores/CPU
                                    3.166 GHz, 8GB RAM
      para MySQL 5.5 sobre 5.1.50   Windows Server 2008



                        17
MySQL Database
SysBench Benchmarks - Windows




                                     MySQL 5.5.6
                                     (Default InnoDB)



                                     MySQL 5.1.50
                                     (InnoDB Plug-in)



                                     MySQL 5.1.50
                                     (InnoDB built-in)




1560% ganho de performance          Intel x86_64
                                    4 CPU x 2 Cores/CPU
                                    3.166 GHz, 8GB RAM
      para MySQL 5.5 sobre 5.1.50   Windows Server 2008



                        18
MySQL 5.6: um MySQL melhor                             Novo!

• MySQL 5.6 criado a partir do MySQL 5.5 através
  de melhorias:
  •   Otimizador para melhor Performance, Escalabilidade
  •   Performance Schema para melhor instrumentação
  •   InnoDB para melhor throughput transacional
  •   Replicação para maior disponibilidade, integridade de dados
  •   Opções “NotOnlySQL” para maior flexibilidade


            Teste agora mesmo:
            dev.mysql.com/downloads/mysql

                               19
Por que MySQL no Windows?
     Menor TCO               Performance




   Multi-Plataforma        Facilidade de Uso




                      20
MySQL – Flexibilidade Multi-Plataforma

•   Suporte para 20+ Plataformas
•   Sem lock-in de fornecedor
•   Desenvolva/Teste no Windows, implante no LAMP
•   OEM/ISVs podem embarcar o MySQL e distribuir em
    mais mercados, oferecendo mais flexibilidade aos
    usuários finais




                           21
Versões Windows para MySQL

Arquiteturas
• x86 – 32 bit e 64 bit
Versões
• Windows 2008
• Windows 2008 RC
• Windows 7
• Windows Vista
• Windows 2003 Server
• Windows XP




                          22
Por que MySQL no Windows?
     Menor TCO               Performance




   Multi-Plataforma        Facilidade de Uso




                      23
MySQL Conectores/Drivers para Windows

Desenvolvido pela Oracle      Comunidade
• Connector/ODBC ODBC         • PHP
• Connector/Net     ADO.NET   • Perl
• Connector/J       JDBC      • Python
• Connector/C       C API     • Ruby
• Connector/C++     C++ API


  Amplo suporte a várias linguagens
         mysql.com/products/connector

                       24
Migre de MS-Access para MySQL
Use Connector/ODBC
• MS-Access pode suportar um BD de apenas 2GB
• MySQL pode lidar com milhares de conexões
  simultâneas
• MySQL tira vantagem de sistemas multi-cpu/core
• MySQL possui melhor segurança, proteção aos
  dados, backup, replicação e outras funcionalidades de
  SGBDs
• Acesse via MySQL Connector/ODBC
     • Mesmo para outros produtos Microsoft Office
Whitepapers
• A Guide to Migrating From Microsoft Access to MySQL
• A Visual Guide to Microsoft Access Front-Ends with MySQL
                mysql.com/windows

                             25
MySQL Connector/ODBC




               26
MySQL Connector/Net
 Desenvolva aplicativos corporativos no Windows
• Crie aplicações .NET facilmente
   • C#,
   • ASP.NET
   • VB.net
• Connector/Net
   • Implementa as interfaces ADO.NET
   • Integra com ferramentas compatíveis com ADO.NET
   • Driver ADO.NET totalmente gerenciado
   • Suporta Windows Authentication
   • Open Source, escrito 100% em C#



                          27
MySQL Connector/Net
    Desenvolva aplicativos corporativos no Windows
• Compatível com Visual Studio 2010
• Suporte ao .Net 4.x (e anteriores desde 2.x)
• Desenvolvimento Model-First usando Entity Framework
• Editor nativo MySQL no Visual Studio
• Compatível com assistentes do Visual Studio
   • Novo modo “MySQL Server” – específico para mysql
• Integração com Web site wizard
   • Usado para criar websites ASP.NET com MySQL
     Server
   • Traz vários “providers”. Adiciona botão na barra de
     ferramentas para navegar nestes providers


                             28
MySQL Connector/Net
 Desenvolva aplicativos corporativos no Windows

• Ddlt4 template macro para configuração de website
   • EF4 – desenvolvimento “model first”
      • Inicie com um modelo
      • Depois crie o esquema de dados usando
        MySQL Templates (forward engineer)
• Habilite ou desabilite a coleta/análise de queries em
  tempo de execução – integrado com MySQL
  Enterprise Monitor Query Analyzer
• Edite/crie Tabelas, colunas, índices, FKs, views,
  Stored Procedures, Functions ….
• Escopos de transação aninhados


                            29
MySQL Connector/Net 6.5                             Novo!
• Suporte a “partial trust”
   • Políticas de segurança MySQL agora equivalem às do
     SQL Server. Permite aplicações MySQL rodar sem
     problemas em ambientes com partial/medium trust
     (hosting/cloud, on-premise).
• “SQL auto-complete” no editor Visual Studio
• Suporte à “command injection”
   • Permite sobrescrever commands – importante para
     testes, debug, etc.
• Suporte à intercepção de “Exceptions”
   • Permite desenvolvedores capturar facilmente exceções
     de aplicações para tratamento automático ou debug.


                              30
Materiais sobre Connector/Net

• Integração com Visual Studio
 http://dev.mysql.com/doc/refman/5.5/en/connector-net-visual-studio.html


• Download do Connector/Netat:
 http://www.mysql.com/downloads/connector/net/


• Explorando MySQL no ambiente Microsoft .NET
 http://dev.mysql.com/tech-resources/articles/dotnet/index.html


• MySQL com .NET/C#/Visual Basic/Powershell
 http://dev.mysql.com/usingmysql/dotnet/




                                      31
MySQL Installer for Windows




• Único arquivo para download e
  instalação
• Interface amigável para Windows
• Verifica pré-requisitos automaticamente
• Faz atualizações
• Configura produtos incluídos
• Do download ao desenvolvimento em
  3 minutos!

                                 32
MySQL Installer for Windows
• Interface gráfica nativa do
  Windows
• Todos produtos MySQL para
  desenvolvimento em UM único
  pacote
   •   MySQL Database
   •   MySQL Connectors
   •   MySQL Workbench e exemplos de
       modelos
   •   Exemplos de bancos de dados
   •   Documentação
• Alta integração de produtos,
  download sob demanda,
  funcionalidades de atualização

                                     33
MySQL Installer for Windows
   Selecione


                  Atualize


                               Configure




mysql.com/downloads

                      34
Questões difíceis
… problemas de performance?
                                 … servidores down?

… queries lentas, custosas?
                                 … política de segurança, muda?

… onde, quando, como “tunar”?
                                 … produtividade de desenv./QA?

… problemas de replicação?
                                 … qual versão do MySQL rodar?

… os sistemas escalarão?
                                 … posso recuperar?

            …gerenciar bases Oracle e MySQL?

                                35
Resposta: MySQL Enterprise Edition.
• Desenvolvimento Visual BD MySQL, Monitoramento,
  Backup e serviços Oracle de suporte técnico
• Totalmente suportado nos sistemas Win 32, 64


                         Oracle Product     Oracle Premier
                          Certifications       Support

             MySQL Enterprise                       MySQL Enterprise
                 Backup                            Monitor/Query Analyzer


      MySQL Enterprise                                       MySQL Enterprise
          Security                                              Scalability


   MySQL Enterprise
    High Availability                                          MySQL Workbench




                                           36
MySQL Enterprise Security
MySQL External Authentication

• Windows
      •   Acesse serviços nativos do Windows
      •   Autenticação de usuários já logados no
          Windows (inclusive Windows Active Directory)
• PAM (Pluggable Authentication Modules)
      •   Acesse métodos de autenticação externos
      •   Interfaces padronizadas (Unix, LDAP,
          Kerberos, outros)
      •   proxy users
• Pluggable Authentication API – para plug-ins
                      Integra o MySQL
    com infra-estruturas de segurança existentes e SOPs.


                             37
Windows Authentication: Exemplo
 Connect as

  1. MyDomainjoe faz login         App
     na aplicação com senha
     Windows
                                           Connector
Connect as                                                         Connect as

 3. A aplicação conecta-se                                         2. MyDomainjoe é
    ao MySQL com usuário                                              autenticado via
    win_joe.                                                          LDAP/AD
Connected                     Connect as

                              4. Tokens são verificados, o
                                 usuário win_joe é autenticado
                                 com Windows login, porém
                                           Authenticate
               Windows           com privilégios do MySQL.
                                                                 LDAP/AD
                Auth
               CREATE USER win_joe
                IDENTIFIED WITH authentication_windows
               AS ‘joe';



                                              38
MySQL Enterprise Scalability
MySQL Thread Pool

• Gestão de threads padrão do MySQL – performance
  excelente, mas pode limitar a escalabilidade com o
  incremento de conexões simultâneas
• MySQL Thread Pool plug-in melhora a escalabilidade
  sustentando a performance mesmo com o aumento
  de usuários e o inevitável incremento do número de
  conexões simultâneas
• Thread Pool API



         Performance maior e mais sustentável,
     acompanhando o crescimento da base de usuários.


                            39
Gestão Padrão do Thread Pool

              Clientes Externos

                                  Gestão Padrão     Threads de Execução para Conexões
                                  doThread Pool


                                    Conexões /
                                    Statements
                                   atribuídas aos
                                  Threads durante
                                   sua existência


Clientes Internos

   • Conexões são atribuídas a 1 thread durante a existência da Conexão.
   • A mesma thread é usada para todos statements (single threaded)
   • Sem priorização das threads e execução dos statements
   • Muitas conexões concorrentes = consumo excessivo de memória e overhead no
     tratamento de contexto, o que limita a escalabilidade


                                            40
Com o Thread Pool Habilitado

              Clientes Externos

                                         Thread Pool        Execução das Conexões das Threads
                                        Grupo Thread 1
                                                              Grupo Thread 1
                                        Threads 1 - 4096

                                        Grupo Thread 2        Grupo Thread 2
                                      Threads 4097 - 8193
                                                              Grupo Thread N
                                       Grupo Thread N
                                       Threads 8194 - N

Clientes Internos

  • O pool contém uma quantidade configurável de Grupo de Threads(default = 16), cada um
    gerencia até 4096 threads reusáveis
  • Cada conexão é atribuída ao grupo de thread via round robin
  • As threads são priorizadas, os statements são enfileirados para limitar as execuções
    simultâneas e a carga no servidor, melhorando a escalabilidade quando o volume de
    conexões cresce.


                                                   41
MySQL Enterprise Edition
                                   MySQL 5.5 Sysbench OLTP Read/Write
                          8.000

                          7.000
Transactions Per Second




                                                                              MySQL Enterprise Edition
                          6.000
                                                                                                       Com Thread Pool
                          5.000

                          4.000

                          3.000

                          2.000

                          1.000
                                                                              MySQL Community Server
                             0
                                                                                                        Sem Thread Pool


                                                                               MySQL 5.5.16
                                          Simultaneous Database Connections    Oracle Linux 6.1, Unbreakable Kernel 2.6.32
                                                                               2 sockets, 24 cores, 2 X 12-core
                                                                               Intel(R) Xeon(R) X5670 2.93GHz CPUs
                                                                               72GB DDR3 RAM
                     20x Melhor Escalabilidade com Thread Pool                 2 X LSI SCSI Disk (MR9261-8i) (597GB)




                                                                    42
MySQL Enterprise Edition
                                   MySQL 5.5 Sysbench OLTP Read Only
                          12.000

                          10.000                                              MySQL Enterprise Edition
Transactions Per Second




                                                                                                       Com Thread Pool
                           8.000

                           6.000

                           4.000
                                                                              MySQL Community Server
                           2.000                                                                        Sem Thread Pool


                              0


                                                                               MySQL 5.5.16
                                          Simultaneous Database Connections    Oracle Linux 6.1, Unbreakable Kernel 2.6.32
                                                                               2 sockets, 24 cores, 2 X 12-core
                                                                               Intel(R) Xeon(R) X5670 2.93GHz CPUs
                                                                               72GB DDR3 RAM
                     3x Melhor Escalabilidade com Thread Pool                  2 X LSI SCSI Disk (MR9261-8i) (597GB)




                                                                    43
MySQL Enterprise High Availability
          Windows Server Failover Clustering
     • Windows Server 2008 R2, MySQL 5.5**
     • Quorum (3o voto), dados (InnoDB + schema) &
                                                                                 Slave        App      App        App
       binários (opcional) em armazenamento
       compartilhado (teste com iSCSI & FCAL)
     • Failover:
          • Manutenção planejada
          • Falha do serviço MySQL                                                                  Virtual IP

          • Falhas de conectividade ou no host
     • Perda de serviço = alguns segundos + tempo de
       recovery do InnoDB:
          • Aplicação vê temporariamente uma perda de
            conexão e reconecta no mesmo IP
          • Slave na Replicação recupera-se automaticamente
     • Cluster gerenciado pela interface snap-in MS
                                                                                         Vote       Data         Bin
       Failover Cluster Management
     • Nenhum novo software ou script é necessário
** Suporte técnico para Windows Server Failover Clustering deve ser adquirido da Microsoft.

                                                            44
MySQL Enterprise Backup
• Backup online para InnoDB
• Backups completos, incrementais, parciais
  (automatizados via script)
• Compressão
• Opções de Recovery: Point in Time, Completo, Parcial
• Metadados de status, progresso e histórico
• Tamanho ilimitado do BD               mysqlbackup


• Multi-Plataforma
                                 MEB Backup            MySQL
  • Windows, Linux, Unix            Files           Database Files

• Certificado para Oracle Secure Backup, compatível SBT

         Backup e Recovery mais rápidos e online.


                            45
MySQL Enterprise Monitor
• Visão centralizada e global do
  ambiente MySQL
• Monitoramento e alertas
  automatizados, baseados em
  regras (integra via SMTP, SNMP)
• Capturas de Query, análise para
  tuning correlacionadas com
  gráficos de monitoramento
• Monitoramento visual de
  aplicações/servidores mais
  importantes
• Monitoramento da replicação em
  tempo real, descoberta
  automática das topologias
                                         Um assistente virtual dos DBAs
• Integrado com My Oracle Support

                                    46
Implantação do MySQL Enterprise Monitor
            MEM Deployment Diagram




Suporta Win 7, Vista, 2003, 2008 Server, XP Pro,
                 x86 32 e 64 bit
                                    47
MySQL Advisors
                                              Administration
                 MySQL Cluster                                             Performance
                                          • Monitors and Advises on
         • Monitors and Advises on          Optimal Configuration       • Monitors and Advises
           status/ performance of                                         on Optimal
           MySQL Cluster Data                                             Performance Variable
           Nodes.                                                         Settings

           Custom                                                                  Replication
     • Built by DBA to
       Enforce Organization                                                    • Monitors and Advises on
       specific best practices.                                                  Master/Slave Latency.

           Upgrade                                                                  Security
      • Monitors and Advises on                                               • Monitors and Advises
        Bugs/Upgrades that affect                                               on Unplanned Security
        current installation                                                    Changes/Loopholes

                                      Schema                          Memory Usage
                                  • Monitors and Advises     • Monitors and advises
                                    on Unplanned Schema        on optimal
                                    Change                     memory/cache settings

        160+ Regras, 60+ Gráficos do MySQL e do SO
 Economize tempo escrevento, implantando, versionando e mantendo scripts
customizados. Minimize riscos agindo em potenciais problemas pró-ativamente.


                                                        48
MySQL Query Analyzer
• Monitoramento centralizado de
  queries lentas
• Dispensa o uso de Slow Query
  Log, SHOW PROCESSLIST
• Alimentado via Connectors
• Visão agregada das estatísticas
  de queries: counts, time, rows
• Navegação visual através dos
  gráficos e histórico
• Rastreabilidade da query até o
  código-fonte da aplicação
Economize tempo minerando
execuções atômicas dos logs.
Minimize riscos de sobrecarga
encontrando e eliminando queries
lentas.

                                    49
Query Execution Drill Downs
                  Exemplo execução de
                   query com substituição
                   de variável

                   Rastreamento do ponto de
                    origem da query no código-fonte



                            EXPLAIN da execução




                 50
Monitoramento Automatizado da Replicação

• Auto-detecção das topologias,
  agrupando Master/Slaves
• Verificação em tempo real e
  consolidada do status e
  sincronização
• Notificações no caso de
  problemas de sincronização
• Pró-ativo vs reativo


Economize tempo monitorando e
coletando dados de sincronização
automaticamente sem a
necessidade de usar linha de
comando no MySQL.



                                   51
MySQL Workbench SE
Database Design                             Scripts & Plug-ins
• Modelagem Visual                     Interface similar ao VS 2010
• Engenharia reversa e geração do banco Economize tempo no desenv. e
  a partir do modelo                    gestão de aplicações com MySQL
• Validação e documentação automática
  do Schema
SQL Development
• SQL Editor - Color Syntax Highlighting
• Objetos - Import/Export, Browse/Edit
• Connections - Wizard, SSH Tunnel
Database Administration
• Status, Configuração, Start/Stop
• Usuários, Segurança, Sessions
• Import/Export Dump Files



                                           52
MySQL Enterprise Edition

Capacidade de gerenciar BDs Oracle e MySQL com
ferramentas/soluções Oracle que você já utiliza.




                       Oracle Product     Oracle Premier
                                             Support
                        Certifications
            MySQL Enterprise                  MySQL Enterprise
                Backup                       Monitor/Query Analyzer


     MySQL Enterprise                                  MySQL Enterprise
         Security                                         Scalability


  MySQL Enterprise
   High Availability                                       MySQL Workbench




                                     53
MySQL Enterprise Oracle Certifications

•   WebLogic Server
•   Database Adapter for Oracle SOA Suite **
•   Oracle Business Process Management **
•   Oracle Virtual Directory
•   Oracle Data Integrator
•   Oracle Enterprise Performance Management **
•   Oracle Identity Analytics
•   Open SSO STS, Open SSO Fedlet
• Todos já incluem MySQL 5.x JDBC driver
• ** MySQL como opção de Metadata Repository (em
  progresso)



                             54
MySQL Enterprise Oracle Certifications
 • Oracle Linux
 • Oracle VM
 • Oracle VM Template for
   MySQL EE
 • Oracle GoldenGate
 • Oracle Secure Backup
 • Oracle Database Firewall
 • My Oracle Online Support

Capacidade de gerenciar BDs Oracle e
MySQL com ferramentas/soluções Oracle que
você já utiliza.



                                55
Oracle Premier Support para MySQL
    Conte com Os Experts, obtenha benefícios singulares
•   Direto da Fonte
•   Maior time de especialistas MySQL
•   Contato com MySQL Developers
                                                 Somente com
•   Hot Fixes
                                                       a Oracle
•   Realeases de manutenção
•   Suporte MySQL em 29 línguas
•   Acesso direto aos engenheiros de suporte MySQL
•   24x7x365                            "The eng that assisted me was
                                        simply outstanding. He immediately
•   Número ilimitado de tickets         recognized the cause of my problem
                                        and provided the resolution."
•   Knowledge Base                       -- (July 27, 2011)

•   Suporte Consultivo MySQL            mysql.com/support/quotes.html



                                   56
Questões difíceis, soluções reais
… problemas de performance?
 • MySQL Enterprise Scalability                 … servidores down?
 • MySQL Enterprise Monitor, Advisors, QUAN        • Oracle Premier 7x24 Support
 • MySQL Consultative Support                      • MySQL Enterprise Monitor, Advisors
                                                   • MySQL Enterprise High Availability
… queries lentas, custosas?
 • MySQL Enterprise Monitor, Query Analyzer    … política de segurança, muda?
                                                   • MySQL External Authentication
… onde, quando, como “tunar”?                      • MySQL Enterprise Monitor, Security Advisor
 • MySQL Enterprise Monitor, Advisors, QUAN
 • MySQL Consultative Support                  … produtividade de desenv./QA?
                                                   • MySQL Workbench SE
… problemas de replicação?                         • MySQL Enterprise Monitor, Query Analyzer
 • MySQL Enterprise Monitor, Replication Monitor
 • Oracle Premier 7x24 Support                 … qual versão do MySQL rodar?
… os sistemas escalarão?                           • Oracle Premier 7x24 Support
 • MySQL Enterprise Scalability
 • MySQL Enterprise Monitor, Advisors, QUAN
                                               … posso recuperar?
                                                   • MySQL Enterprise Backup
 • MySQL Consultative Support
                  …gerenciar bases Oracle e MySQL?
                            • Oracle Product Certifications


                                              57
Histórias de Clientes




          mysql.com/customers
                   58
Mais informação
mysql.com
• MySQL Produtos e Edições
• TCO calculator – teste vários cenários!
• Artigos (White Papers)
• Histórias de clientes e casos de sucesso
• mysql.com/why-mysql/windows – PARADA OBRIGATÓRIA! ;)


dev.mysql.com
• Downloads
• Documentação
• Fóruns
• Blog PlanetMySQL


edelivery.oracle.com
• Trial 30 dias dos produtos comerciais MySQL


                                        59
Obrigado!
                        Time MySQL Brasil




marcos.trujillo@oracle.com    ana.guiselini@oracle.com    airton.lastori@oracle.com




  @MySQLBR                   facebook.com/MySQLBR        meetup.com/MySQL-BR


                                        60

Mais conteúdo relacionado

Mais procurados

windows server 2012 e windows 8 = melhores juntos
windows server 2012 e windows 8 = melhores juntoswindows server 2012 e windows 8 = melhores juntos
windows server 2012 e windows 8 = melhores juntos
Fabio Hara
 
Alta-disponibilidade e alta performance com o MySQL Cluster 7.3
Alta-disponibilidade e alta performance com o MySQL Cluster 7.3Alta-disponibilidade e alta performance com o MySQL Cluster 7.3
Alta-disponibilidade e alta performance com o MySQL Cluster 7.3
MySQL Brasil
 
Windows Server 2012 - Alem da virtualização
Windows Server 2012 - Alem da virtualizaçãoWindows Server 2012 - Alem da virtualização
Windows Server 2012 - Alem da virtualização
Fabio Hara
 
Windows Server 2012 - estilo de trabalho moderno
Windows Server 2012 - estilo de trabalho modernoWindows Server 2012 - estilo de trabalho moderno
Windows Server 2012 - estilo de trabalho moderno
Fabio Hara
 
Windows Server 2012 - Todas aplicações em qualquer nuvem
Windows Server 2012 - Todas aplicações em qualquer nuvemWindows Server 2012 - Todas aplicações em qualquer nuvem
Windows Server 2012 - Todas aplicações em qualquer nuvem
Fabio Hara
 
Hyper-V - avançado
Hyper-V - avançadoHyper-V - avançado
Hyper-V - avançado
Fabio Hara
 
Virtualização com Hyper-V
Virtualização com Hyper-VVirtualização com Hyper-V
Virtualização com Hyper-V
CDS
 

Mais procurados (20)

MySQL Profiling com Enterprise Monitor
MySQL Profiling com Enterprise Monitor MySQL Profiling com Enterprise Monitor
MySQL Profiling com Enterprise Monitor
 
windows server 2012 e windows 8 = melhores juntos
windows server 2012 e windows 8 = melhores juntoswindows server 2012 e windows 8 = melhores juntos
windows server 2012 e windows 8 = melhores juntos
 
Alta-disponibilidade e alta performance com o MySQL Cluster 7.3
Alta-disponibilidade e alta performance com o MySQL Cluster 7.3Alta-disponibilidade e alta performance com o MySQL Cluster 7.3
Alta-disponibilidade e alta performance com o MySQL Cluster 7.3
 
Windows Server 2012 - Alem da virtualização
Windows Server 2012 - Alem da virtualizaçãoWindows Server 2012 - Alem da virtualização
Windows Server 2012 - Alem da virtualização
 
planejamento pre-instalacao win server 2012
 planejamento pre-instalacao win server 2012 planejamento pre-instalacao win server 2012
planejamento pre-instalacao win server 2012
 
Ws2012r2 hyper v
Ws2012r2 hyper vWs2012r2 hyper v
Ws2012r2 hyper v
 
Windows Server 2012 - estilo de trabalho moderno
Windows Server 2012 - estilo de trabalho modernoWindows Server 2012 - estilo de trabalho moderno
Windows Server 2012 - estilo de trabalho moderno
 
Windows Server 2012 - Todas aplicações em qualquer nuvem
Windows Server 2012 - Todas aplicações em qualquer nuvemWindows Server 2012 - Todas aplicações em qualquer nuvem
Windows Server 2012 - Todas aplicações em qualquer nuvem
 
Hyper-V - avançado
Hyper-V - avançadoHyper-V - avançado
Hyper-V - avançado
 
Visão geral do Windows Azure Backup
Visão geral do Windows Azure BackupVisão geral do Windows Azure Backup
Visão geral do Windows Azure Backup
 
Trabalho de sgbd
Trabalho de sgbdTrabalho de sgbd
Trabalho de sgbd
 
SQL over SMB3
SQL over SMB3SQL over SMB3
SQL over SMB3
 
Windows Admin Center
Windows Admin CenterWindows Admin Center
Windows Admin Center
 
Banco de Dados NoSQL - Disciplina: Sistemas Distribuídos
Banco de Dados NoSQL - Disciplina: Sistemas DistribuídosBanco de Dados NoSQL - Disciplina: Sistemas Distribuídos
Banco de Dados NoSQL - Disciplina: Sistemas Distribuídos
 
Projeto de Transformação Digital com System Center 2016
Projeto de Transformação Digital com System Center 2016Projeto de Transformação Digital com System Center 2016
Projeto de Transformação Digital com System Center 2016
 
MySQL sobreviverá à nuvem?
MySQL sobreviverá à nuvem?MySQL sobreviverá à nuvem?
MySQL sobreviverá à nuvem?
 
Virtualização com Hyper-V
Virtualização com Hyper-VVirtualização com Hyper-V
Virtualização com Hyper-V
 
Hyper-V
Hyper-VHyper-V
Hyper-V
 
Usando Hyper-v 2012 para virtualização do SQL Server
Usando Hyper-v 2012 para virtualização do SQL ServerUsando Hyper-v 2012 para virtualização do SQL Server
Usando Hyper-v 2012 para virtualização do SQL Server
 
Introdução ao Windows Server 2012
Introdução ao Windows Server 2012Introdução ao Windows Server 2012
Introdução ao Windows Server 2012
 

Semelhante a MySQL no Windows: implementação eficiente de novas aplicações

MySQL Enterprise (outubro-2011)
MySQL Enterprise (outubro-2011)MySQL Enterprise (outubro-2011)
MySQL Enterprise (outubro-2011)
MySQL Brasil
 

Semelhante a MySQL no Windows: implementação eficiente de novas aplicações (20)

MySQL Alta Performance & Alta Disponibilidade
MySQL Alta Performance & Alta DisponibilidadeMySQL Alta Performance & Alta Disponibilidade
MySQL Alta Performance & Alta Disponibilidade
 
MySQL e Oracle para Desenvolvedores
MySQL e Oracle para DesenvolvedoresMySQL e Oracle para Desenvolvedores
MySQL e Oracle para Desenvolvedores
 
MySQL e Oracle para Desenvolvedores
MySQL e Oracle para DesenvolvedoresMySQL e Oracle para Desenvolvedores
MySQL e Oracle para Desenvolvedores
 
MySQL 5.6 com memcached
MySQL 5.6 com memcachedMySQL 5.6 com memcached
MySQL 5.6 com memcached
 
SQL Server 2012
SQL Server 2012SQL Server 2012
SQL Server 2012
 
MySQL Enterprise (outubro-2011)
MySQL Enterprise (outubro-2011)MySQL Enterprise (outubro-2011)
MySQL Enterprise (outubro-2011)
 
MySQL Enterprise Monitor para Desenvolvedores
MySQL Enterprise Monitor para DesenvolvedoresMySQL Enterprise Monitor para Desenvolvedores
MySQL Enterprise Monitor para Desenvolvedores
 
Uso estratégico do MySQL para empresas de TI: Novidades e Futuro
Uso estratégico do MySQL para empresas de TI: Novidades e FuturoUso estratégico do MySQL para empresas de TI: Novidades e Futuro
Uso estratégico do MySQL para empresas de TI: Novidades e Futuro
 
MySQL e Oracle para DBAs
MySQL e Oracle para DBAsMySQL e Oracle para DBAs
MySQL e Oracle para DBAs
 
MySQL e Oracle para DBAs
MySQL e Oracle para DBAsMySQL e Oracle para DBAs
MySQL e Oracle para DBAs
 
MySQL + Java - Manuel Contreras
MySQL + Java - Manuel ContrerasMySQL + Java - Manuel Contreras
MySQL + Java - Manuel Contreras
 
MySQL Cluster - visão geral
MySQL Cluster - visão geralMySQL Cluster - visão geral
MySQL Cluster - visão geral
 
Realmente devo pensar na versão Enterprise do MySQL?
Realmente devo pensar na versão Enterprise do MySQL?Realmente devo pensar na versão Enterprise do MySQL?
Realmente devo pensar na versão Enterprise do MySQL?
 
MySQL do ISAM ao NoSQL
MySQL do ISAM ao NoSQLMySQL do ISAM ao NoSQL
MySQL do ISAM ao NoSQL
 
MySQL Cluster - visão geral
MySQL Cluster - visão geralMySQL Cluster - visão geral
MySQL Cluster - visão geral
 
Azure Data Overview
Azure Data OverviewAzure Data Overview
Azure Data Overview
 
Novidades do Universo MySQL Maio 2014
Novidades do Universo MySQL Maio 2014Novidades do Universo MySQL Maio 2014
Novidades do Universo MySQL Maio 2014
 
5. rodando containers docker na aws
5. rodando containers docker na aws5. rodando containers docker na aws
5. rodando containers docker na aws
 
QCon 2016 - Como migramos uma solução de 4 milhões de usuários para o Azure
QCon 2016 - Como migramos uma solução de 4 milhões de usuários para o AzureQCon 2016 - Como migramos uma solução de 4 milhões de usuários para o Azure
QCon 2016 - Como migramos uma solução de 4 milhões de usuários para o Azure
 
Novidades do Universo MySQL Agosto 2014
Novidades do Universo MySQL Agosto 2014Novidades do Universo MySQL Agosto 2014
Novidades do Universo MySQL Agosto 2014
 

Mais de MySQL Brasil

Mais de MySQL Brasil (20)

MySQL como Document Store PHP Conference 2017
MySQL como Document Store PHP Conference 2017MySQL como Document Store PHP Conference 2017
MySQL como Document Store PHP Conference 2017
 
MySQL no Paypal Tesla e Uber
MySQL no Paypal Tesla e UberMySQL no Paypal Tesla e Uber
MySQL no Paypal Tesla e Uber
 
MySQL 8.0.1 DMR
MySQL 8.0.1 DMRMySQL 8.0.1 DMR
MySQL 8.0.1 DMR
 
Alta disponibilidade com MySQL Enterprise
Alta disponibilidade com MySQL EnterpriseAlta disponibilidade com MySQL Enterprise
Alta disponibilidade com MySQL Enterprise
 
MySQL Roadmap NoSQL HA Fev17
MySQL Roadmap NoSQL HA Fev17MySQL Roadmap NoSQL HA Fev17
MySQL Roadmap NoSQL HA Fev17
 
Segurança no MySQL
Segurança no MySQLSegurança no MySQL
Segurança no MySQL
 
5 razões estratégicas para usar MySQL
5 razões estratégicas para usar MySQL5 razões estratégicas para usar MySQL
5 razões estratégicas para usar MySQL
 
Alta disponibilidade no MySQL 5.7 GUOB 2016
Alta disponibilidade no MySQL 5.7 GUOB 2016Alta disponibilidade no MySQL 5.7 GUOB 2016
Alta disponibilidade no MySQL 5.7 GUOB 2016
 
MySQL 5.7 como Document Store
MySQL 5.7 como Document StoreMySQL 5.7 como Document Store
MySQL 5.7 como Document Store
 
Enabling digital transformation with MySQL
Enabling digital transformation with MySQLEnabling digital transformation with MySQL
Enabling digital transformation with MySQL
 
Alta Disponibilidade no MySQL 5.7 para aplicações em PHP
Alta Disponibilidade no MySQL 5.7 para aplicações em PHPAlta Disponibilidade no MySQL 5.7 para aplicações em PHP
Alta Disponibilidade no MySQL 5.7 para aplicações em PHP
 
Alta Disponibilidade no MySQL 5.7
Alta Disponibilidade no MySQL 5.7Alta Disponibilidade no MySQL 5.7
Alta Disponibilidade no MySQL 5.7
 
NoSQL no MySQL 5.7
NoSQL no MySQL 5.7NoSQL no MySQL 5.7
NoSQL no MySQL 5.7
 
OpenStack & MySQL
OpenStack & MySQLOpenStack & MySQL
OpenStack & MySQL
 
10 Razões para Usar MySQL em Startups
10 Razões para Usar MySQL em Startups10 Razões para Usar MySQL em Startups
10 Razões para Usar MySQL em Startups
 
Novidades do MySQL para desenvolvedores ago15
Novidades do MySQL para desenvolvedores ago15Novidades do MySQL para desenvolvedores ago15
Novidades do MySQL para desenvolvedores ago15
 
Estratégias de Segurança e Gerenciamento para MySQL
Estratégias de Segurança e Gerenciamento para MySQLEstratégias de Segurança e Gerenciamento para MySQL
Estratégias de Segurança e Gerenciamento para MySQL
 
Novidades do Universo MySQL julho-15
Novidades do Universo MySQL julho-15Novidades do Universo MySQL julho-15
Novidades do Universo MySQL julho-15
 
Serviços Escaláveis e de Alta Performance com MySQL e Java
Serviços Escaláveis e de Alta Performance com MySQL e JavaServiços Escaláveis e de Alta Performance com MySQL e Java
Serviços Escaláveis e de Alta Performance com MySQL e Java
 
MySQL The State of the Dolphin - jun15
MySQL The State of the Dolphin - jun15MySQL The State of the Dolphin - jun15
MySQL The State of the Dolphin - jun15
 

MySQL no Windows: implementação eficiente de novas aplicações

  • 1. <Insert Picture Here> MySQL no Windows Marcos Trujillo marcos.trujillo@oracle.com implementação eficiente de Airton Lastori novas aplicações airton.lastori@oracle.com mai-2012
  • 2. INVESTIMENTOS INIGUALÁVEIS InnoDB REPLICAÇÃO MELHORIAS DE PERFORMANCE EMBARCADO WINDOWS CENTENAS DE ESPECIALISTAS CLOUD ESTRATÉGICO SUPORTE DE PRIMEIRA CLASSE WEB MySQL CLUSTER NoSQL LINUX MySQL ENTERPRISE EDITION MAIORES TIMES DE ENGENHARIA DO MySQL & ORGANIZAÇÃO2DE SUPORTE
  • 3. Mais Lançamentos de Produtos do que Nunca Liderando a • MySQL Enterprise Backup 3.7 Inovação do MySQL • Oracle VM Template for MySQL Enterprise Edition • MySQL Enterprise Monitor 2.2 • MySQL Cluster 7.2: GA! • MySQL Enterprise Oracle • MySQL Cluster 7.1 Certifications • MySQL Cluster Manager 1.0 • MySQL Windows Installer • MySQL Workbench 5.2 •MySQL Enterprise Commercial • MySQL Database 5.5 Extensions • MySQL Enterprise Backup 3.5 Todos em GA! • MySQL Enterprise Monitor 2.3 • MySQL Database 5.6 DMR* • MySQL Cluster Manager 1.1 • MySQL Cluster 7.2 DMR Todos em GA! e MySQL Labs! “mais cedo e com mais frequência” Um MySQL Melhor *Development Milestone Release 2010 2011 2012 Q1 3
  • 4. Portfolio Open Source (GPL) • MySQL Database (Community Server) 5.5.24 GA e 5.6.5 DMR • MySQL Cluster (NDB Community) 7.2.6 GA • MySQL Workbench Community Edition 5.2.40 GA • MySQL Utilities (em Python) • MySQL Connectors • ODBC, Java, .Net, C, C++, PHP, OpenOffice • MySQL Proxy 0.8.2 Alpha • Documentação: livre para uso, não coberto pela GPL • Forums dev.mysql.com/downloads 4
  • 5. O MySQL está em todo lugar! Web & Enterprise OEM & ISVs Cloud 5
  • 6. MySQL no Windows – Você sabia? • O Windows é a plataforma de desenvolvimento #1 para MySQL • O Windows é a plataforma #1 de implantação para usuários da MySQL Community Edition forums.mysql.com 6
  • 7. Agenda • Por que MySQL no Windows? • MySQL 5.5 = Performance, Confiabilidade, Facilidade de Uso • Integração com Ambientes Windows Existentes • Segurança, Escalabilidade, Alta Disponibilidade • Ferramentas para Desenvolvedores e DBAs • Suporte Técnico 7
  • 8. Por que MySQL no Windows? Menor TCO Performance Multi-Plataforma Facilidade de Uso 8
  • 9. Por que MySQL no Windows? Menor TCO Performance Multi-Plataforma Facilidade de Uso 9
  • 10. MySQL vs Microsoft SQL Server Até 96% de economia no Custo Total de Propriedade $1.600.000 $1.539.776 $1.400.000 $1.200.000 $1.000.000 $769.860 $800.000 $600.000 $400.000 $60.000 $200.000 $0 MySQL Enterprise Edition Microsoft SQL Server 2008 Enterprise Microsoft SQL Server Edition 2012 Enterprise Edition Configuração de Hardware: - Servidores Intel x86_64: 4, CPUs/Servidor: 4, Cores/CPU: 8 mysql.com/tcosavings 10
  • 11. MySQL Database Performance, Confiabilidade, Facilidade de Uso Gerenciamento Suporte às mais eficiente e multi- conhecidas thread de sessões plataformas/linguagens de desenvolvimento Parsing completo DML+DDL, otimizador, baseado em custo, caching de queries e resultados Várias opções de Storage Engine para necessidades específicas das aplicações Opções flexíveis de logging e armazenamento físico 11
  • 12. Comparação da Arquitetura do MySQL Mecanismo MySQL Microsoft SQL Server Memory Caches • InnoDB data cache • Buffer cache • InnoDB log cache • SQL cache • MyISAM key cache • Misc caches (lock, • Dictionary cache connection, workspace, • Query Cache etc.) • User caches Redo/Undo Logs • InnoDB Undo Space • TempDB (2005+) • InnoDB Logs • Transaction Logs • Binary Log Data Storage • Tablespaces • Filegroups • Table/Index Files • Files • Format files Optimizer • Cost-based • Cost-based 12
  • 13. Comparação das funcionalidades “core” Funcionalidade MySQL Microsoft Índices padrões Heap Tables e B-Tree   Tabelas/Índices Particionados   Suporte Transações ACID   Row-Level Locking, MVCC (leituras não bloqueiam escritas)   Integridade Referencial Garantidas pelo Servidor   Indexação Avançada (Clustered, Full-Text)   Suporte robusto a vários tipos de dados (BLOB’s, varchar,   datetime, numerics, etc.) Replicação   Stored Procedures, Triggers, Functions, Cursors, Updateable Views   Banco de dados em Cluster para Alta Disponibilidade   Otimizador baseado em custo   Backup Online com Point-in-Time Recovery   Suporta Datasets com Terabytes em tamanho   Open Source  13
  • 14. Por que MySQL no Windows? Menor TCO Performance Multi-Plataforma Facilidade de Uso 14
  • 15. MySQL 5.5: a melhor release até hoje! InnoDB é o Storage Engine padrão • Transações ACID, FKs, Crash Recovery Performance Melhorada • Melhorias no MySQL Server • Melhorias no InnoDB • + 360% sobre 5.1 no Linux • + 1500% sobre 5.1 no Windows Mais Disponibilidade • Replicação Semi-síncrona • Replicação Heartbeat Melhor Usabilidade • SIGNAL/RESIGNAL • Mais Opções de Particionamento • Novo PERFORMANCE_SCHEMA > 95% de todas aplicações MySQL rodam no InnoDB 15
  • 16. Otimizações específicas no MySQL 5.5 para Windows Melhorias de Performance: • RW-locks substituídos no MySQL Server pelos RW- locks nativos do Windows (Windows 7, Windows 2008R2 e posteriores). • Variáveis condicionais no MySQL Server substituídas por variáveis condicionais do Windows. • Incrementos estatísticos substituídos com mutexes para fazer uso dos incrementos atômicos nativos do Windows. • Uso de variáveis condicionais nativas do Windows Vista e posteriores no InnoDB. 16
  • 17. MySQL Database SysBench Benchmarks - Windows MySQL 5.5.6 (Default InnoDB) MySQL 5.1.50 (InnoDB Plug-in) MySQL 5.1.50 (InnoDB built-in) 540% ganho de performance Intel x86_64 4 CPU x 2 Cores/CPU 3.166 GHz, 8GB RAM para MySQL 5.5 sobre 5.1.50 Windows Server 2008 17
  • 18. MySQL Database SysBench Benchmarks - Windows MySQL 5.5.6 (Default InnoDB) MySQL 5.1.50 (InnoDB Plug-in) MySQL 5.1.50 (InnoDB built-in) 1560% ganho de performance Intel x86_64 4 CPU x 2 Cores/CPU 3.166 GHz, 8GB RAM para MySQL 5.5 sobre 5.1.50 Windows Server 2008 18
  • 19. MySQL 5.6: um MySQL melhor Novo! • MySQL 5.6 criado a partir do MySQL 5.5 através de melhorias: • Otimizador para melhor Performance, Escalabilidade • Performance Schema para melhor instrumentação • InnoDB para melhor throughput transacional • Replicação para maior disponibilidade, integridade de dados • Opções “NotOnlySQL” para maior flexibilidade Teste agora mesmo: dev.mysql.com/downloads/mysql 19
  • 20. Por que MySQL no Windows? Menor TCO Performance Multi-Plataforma Facilidade de Uso 20
  • 21. MySQL – Flexibilidade Multi-Plataforma • Suporte para 20+ Plataformas • Sem lock-in de fornecedor • Desenvolva/Teste no Windows, implante no LAMP • OEM/ISVs podem embarcar o MySQL e distribuir em mais mercados, oferecendo mais flexibilidade aos usuários finais 21
  • 22. Versões Windows para MySQL Arquiteturas • x86 – 32 bit e 64 bit Versões • Windows 2008 • Windows 2008 RC • Windows 7 • Windows Vista • Windows 2003 Server • Windows XP 22
  • 23. Por que MySQL no Windows? Menor TCO Performance Multi-Plataforma Facilidade de Uso 23
  • 24. MySQL Conectores/Drivers para Windows Desenvolvido pela Oracle Comunidade • Connector/ODBC ODBC • PHP • Connector/Net ADO.NET • Perl • Connector/J JDBC • Python • Connector/C C API • Ruby • Connector/C++ C++ API Amplo suporte a várias linguagens mysql.com/products/connector 24
  • 25. Migre de MS-Access para MySQL Use Connector/ODBC • MS-Access pode suportar um BD de apenas 2GB • MySQL pode lidar com milhares de conexões simultâneas • MySQL tira vantagem de sistemas multi-cpu/core • MySQL possui melhor segurança, proteção aos dados, backup, replicação e outras funcionalidades de SGBDs • Acesse via MySQL Connector/ODBC • Mesmo para outros produtos Microsoft Office Whitepapers • A Guide to Migrating From Microsoft Access to MySQL • A Visual Guide to Microsoft Access Front-Ends with MySQL mysql.com/windows 25
  • 27. MySQL Connector/Net Desenvolva aplicativos corporativos no Windows • Crie aplicações .NET facilmente • C#, • ASP.NET • VB.net • Connector/Net • Implementa as interfaces ADO.NET • Integra com ferramentas compatíveis com ADO.NET • Driver ADO.NET totalmente gerenciado • Suporta Windows Authentication • Open Source, escrito 100% em C# 27
  • 28. MySQL Connector/Net Desenvolva aplicativos corporativos no Windows • Compatível com Visual Studio 2010 • Suporte ao .Net 4.x (e anteriores desde 2.x) • Desenvolvimento Model-First usando Entity Framework • Editor nativo MySQL no Visual Studio • Compatível com assistentes do Visual Studio • Novo modo “MySQL Server” – específico para mysql • Integração com Web site wizard • Usado para criar websites ASP.NET com MySQL Server • Traz vários “providers”. Adiciona botão na barra de ferramentas para navegar nestes providers 28
  • 29. MySQL Connector/Net Desenvolva aplicativos corporativos no Windows • Ddlt4 template macro para configuração de website • EF4 – desenvolvimento “model first” • Inicie com um modelo • Depois crie o esquema de dados usando MySQL Templates (forward engineer) • Habilite ou desabilite a coleta/análise de queries em tempo de execução – integrado com MySQL Enterprise Monitor Query Analyzer • Edite/crie Tabelas, colunas, índices, FKs, views, Stored Procedures, Functions …. • Escopos de transação aninhados 29
  • 30. MySQL Connector/Net 6.5 Novo! • Suporte a “partial trust” • Políticas de segurança MySQL agora equivalem às do SQL Server. Permite aplicações MySQL rodar sem problemas em ambientes com partial/medium trust (hosting/cloud, on-premise). • “SQL auto-complete” no editor Visual Studio • Suporte à “command injection” • Permite sobrescrever commands – importante para testes, debug, etc. • Suporte à intercepção de “Exceptions” • Permite desenvolvedores capturar facilmente exceções de aplicações para tratamento automático ou debug. 30
  • 31. Materiais sobre Connector/Net • Integração com Visual Studio http://dev.mysql.com/doc/refman/5.5/en/connector-net-visual-studio.html • Download do Connector/Netat: http://www.mysql.com/downloads/connector/net/ • Explorando MySQL no ambiente Microsoft .NET http://dev.mysql.com/tech-resources/articles/dotnet/index.html • MySQL com .NET/C#/Visual Basic/Powershell http://dev.mysql.com/usingmysql/dotnet/ 31
  • 32. MySQL Installer for Windows • Único arquivo para download e instalação • Interface amigável para Windows • Verifica pré-requisitos automaticamente • Faz atualizações • Configura produtos incluídos • Do download ao desenvolvimento em 3 minutos! 32
  • 33. MySQL Installer for Windows • Interface gráfica nativa do Windows • Todos produtos MySQL para desenvolvimento em UM único pacote • MySQL Database • MySQL Connectors • MySQL Workbench e exemplos de modelos • Exemplos de bancos de dados • Documentação • Alta integração de produtos, download sob demanda, funcionalidades de atualização 33
  • 34. MySQL Installer for Windows Selecione Atualize Configure mysql.com/downloads 34
  • 35. Questões difíceis … problemas de performance? … servidores down? … queries lentas, custosas? … política de segurança, muda? … onde, quando, como “tunar”? … produtividade de desenv./QA? … problemas de replicação? … qual versão do MySQL rodar? … os sistemas escalarão? … posso recuperar? …gerenciar bases Oracle e MySQL? 35
  • 36. Resposta: MySQL Enterprise Edition. • Desenvolvimento Visual BD MySQL, Monitoramento, Backup e serviços Oracle de suporte técnico • Totalmente suportado nos sistemas Win 32, 64 Oracle Product Oracle Premier Certifications Support MySQL Enterprise MySQL Enterprise Backup Monitor/Query Analyzer MySQL Enterprise MySQL Enterprise Security Scalability MySQL Enterprise High Availability MySQL Workbench 36
  • 37. MySQL Enterprise Security MySQL External Authentication • Windows • Acesse serviços nativos do Windows • Autenticação de usuários já logados no Windows (inclusive Windows Active Directory) • PAM (Pluggable Authentication Modules) • Acesse métodos de autenticação externos • Interfaces padronizadas (Unix, LDAP, Kerberos, outros) • proxy users • Pluggable Authentication API – para plug-ins Integra o MySQL com infra-estruturas de segurança existentes e SOPs. 37
  • 38. Windows Authentication: Exemplo Connect as 1. MyDomainjoe faz login App na aplicação com senha Windows Connector Connect as Connect as 3. A aplicação conecta-se 2. MyDomainjoe é ao MySQL com usuário autenticado via win_joe. LDAP/AD Connected Connect as 4. Tokens são verificados, o usuário win_joe é autenticado com Windows login, porém Authenticate Windows com privilégios do MySQL. LDAP/AD Auth CREATE USER win_joe IDENTIFIED WITH authentication_windows AS ‘joe'; 38
  • 39. MySQL Enterprise Scalability MySQL Thread Pool • Gestão de threads padrão do MySQL – performance excelente, mas pode limitar a escalabilidade com o incremento de conexões simultâneas • MySQL Thread Pool plug-in melhora a escalabilidade sustentando a performance mesmo com o aumento de usuários e o inevitável incremento do número de conexões simultâneas • Thread Pool API Performance maior e mais sustentável, acompanhando o crescimento da base de usuários. 39
  • 40. Gestão Padrão do Thread Pool Clientes Externos Gestão Padrão Threads de Execução para Conexões doThread Pool Conexões / Statements atribuídas aos Threads durante sua existência Clientes Internos • Conexões são atribuídas a 1 thread durante a existência da Conexão. • A mesma thread é usada para todos statements (single threaded) • Sem priorização das threads e execução dos statements • Muitas conexões concorrentes = consumo excessivo de memória e overhead no tratamento de contexto, o que limita a escalabilidade 40
  • 41. Com o Thread Pool Habilitado Clientes Externos Thread Pool Execução das Conexões das Threads Grupo Thread 1 Grupo Thread 1 Threads 1 - 4096 Grupo Thread 2 Grupo Thread 2 Threads 4097 - 8193 Grupo Thread N Grupo Thread N Threads 8194 - N Clientes Internos • O pool contém uma quantidade configurável de Grupo de Threads(default = 16), cada um gerencia até 4096 threads reusáveis • Cada conexão é atribuída ao grupo de thread via round robin • As threads são priorizadas, os statements são enfileirados para limitar as execuções simultâneas e a carga no servidor, melhorando a escalabilidade quando o volume de conexões cresce. 41
  • 42. MySQL Enterprise Edition MySQL 5.5 Sysbench OLTP Read/Write 8.000 7.000 Transactions Per Second MySQL Enterprise Edition 6.000 Com Thread Pool 5.000 4.000 3.000 2.000 1.000 MySQL Community Server 0 Sem Thread Pool MySQL 5.5.16 Simultaneous Database Connections Oracle Linux 6.1, Unbreakable Kernel 2.6.32 2 sockets, 24 cores, 2 X 12-core Intel(R) Xeon(R) X5670 2.93GHz CPUs 72GB DDR3 RAM 20x Melhor Escalabilidade com Thread Pool 2 X LSI SCSI Disk (MR9261-8i) (597GB) 42
  • 43. MySQL Enterprise Edition MySQL 5.5 Sysbench OLTP Read Only 12.000 10.000 MySQL Enterprise Edition Transactions Per Second Com Thread Pool 8.000 6.000 4.000 MySQL Community Server 2.000 Sem Thread Pool 0 MySQL 5.5.16 Simultaneous Database Connections Oracle Linux 6.1, Unbreakable Kernel 2.6.32 2 sockets, 24 cores, 2 X 12-core Intel(R) Xeon(R) X5670 2.93GHz CPUs 72GB DDR3 RAM 3x Melhor Escalabilidade com Thread Pool 2 X LSI SCSI Disk (MR9261-8i) (597GB) 43
  • 44. MySQL Enterprise High Availability Windows Server Failover Clustering • Windows Server 2008 R2, MySQL 5.5** • Quorum (3o voto), dados (InnoDB + schema) & Slave App App App binários (opcional) em armazenamento compartilhado (teste com iSCSI & FCAL) • Failover: • Manutenção planejada • Falha do serviço MySQL Virtual IP • Falhas de conectividade ou no host • Perda de serviço = alguns segundos + tempo de recovery do InnoDB: • Aplicação vê temporariamente uma perda de conexão e reconecta no mesmo IP • Slave na Replicação recupera-se automaticamente • Cluster gerenciado pela interface snap-in MS Vote Data Bin Failover Cluster Management • Nenhum novo software ou script é necessário ** Suporte técnico para Windows Server Failover Clustering deve ser adquirido da Microsoft. 44
  • 45. MySQL Enterprise Backup • Backup online para InnoDB • Backups completos, incrementais, parciais (automatizados via script) • Compressão • Opções de Recovery: Point in Time, Completo, Parcial • Metadados de status, progresso e histórico • Tamanho ilimitado do BD mysqlbackup • Multi-Plataforma MEB Backup MySQL • Windows, Linux, Unix Files Database Files • Certificado para Oracle Secure Backup, compatível SBT Backup e Recovery mais rápidos e online. 45
  • 46. MySQL Enterprise Monitor • Visão centralizada e global do ambiente MySQL • Monitoramento e alertas automatizados, baseados em regras (integra via SMTP, SNMP) • Capturas de Query, análise para tuning correlacionadas com gráficos de monitoramento • Monitoramento visual de aplicações/servidores mais importantes • Monitoramento da replicação em tempo real, descoberta automática das topologias Um assistente virtual dos DBAs • Integrado com My Oracle Support 46
  • 47. Implantação do MySQL Enterprise Monitor MEM Deployment Diagram Suporta Win 7, Vista, 2003, 2008 Server, XP Pro, x86 32 e 64 bit 47
  • 48. MySQL Advisors Administration MySQL Cluster Performance • Monitors and Advises on • Monitors and Advises on Optimal Configuration • Monitors and Advises status/ performance of on Optimal MySQL Cluster Data Performance Variable Nodes. Settings Custom Replication • Built by DBA to Enforce Organization • Monitors and Advises on specific best practices. Master/Slave Latency. Upgrade Security • Monitors and Advises on • Monitors and Advises Bugs/Upgrades that affect on Unplanned Security current installation Changes/Loopholes Schema Memory Usage • Monitors and Advises • Monitors and advises on Unplanned Schema on optimal Change memory/cache settings 160+ Regras, 60+ Gráficos do MySQL e do SO Economize tempo escrevento, implantando, versionando e mantendo scripts customizados. Minimize riscos agindo em potenciais problemas pró-ativamente. 48
  • 49. MySQL Query Analyzer • Monitoramento centralizado de queries lentas • Dispensa o uso de Slow Query Log, SHOW PROCESSLIST • Alimentado via Connectors • Visão agregada das estatísticas de queries: counts, time, rows • Navegação visual através dos gráficos e histórico • Rastreabilidade da query até o código-fonte da aplicação Economize tempo minerando execuções atômicas dos logs. Minimize riscos de sobrecarga encontrando e eliminando queries lentas. 49
  • 50. Query Execution Drill Downs Exemplo execução de query com substituição de variável Rastreamento do ponto de origem da query no código-fonte EXPLAIN da execução 50
  • 51. Monitoramento Automatizado da Replicação • Auto-detecção das topologias, agrupando Master/Slaves • Verificação em tempo real e consolidada do status e sincronização • Notificações no caso de problemas de sincronização • Pró-ativo vs reativo Economize tempo monitorando e coletando dados de sincronização automaticamente sem a necessidade de usar linha de comando no MySQL. 51
  • 52. MySQL Workbench SE Database Design Scripts & Plug-ins • Modelagem Visual Interface similar ao VS 2010 • Engenharia reversa e geração do banco Economize tempo no desenv. e a partir do modelo gestão de aplicações com MySQL • Validação e documentação automática do Schema SQL Development • SQL Editor - Color Syntax Highlighting • Objetos - Import/Export, Browse/Edit • Connections - Wizard, SSH Tunnel Database Administration • Status, Configuração, Start/Stop • Usuários, Segurança, Sessions • Import/Export Dump Files 52
  • 53. MySQL Enterprise Edition Capacidade de gerenciar BDs Oracle e MySQL com ferramentas/soluções Oracle que você já utiliza. Oracle Product Oracle Premier Support Certifications MySQL Enterprise MySQL Enterprise Backup Monitor/Query Analyzer MySQL Enterprise MySQL Enterprise Security Scalability MySQL Enterprise High Availability MySQL Workbench 53
  • 54. MySQL Enterprise Oracle Certifications • WebLogic Server • Database Adapter for Oracle SOA Suite ** • Oracle Business Process Management ** • Oracle Virtual Directory • Oracle Data Integrator • Oracle Enterprise Performance Management ** • Oracle Identity Analytics • Open SSO STS, Open SSO Fedlet • Todos já incluem MySQL 5.x JDBC driver • ** MySQL como opção de Metadata Repository (em progresso) 54
  • 55. MySQL Enterprise Oracle Certifications • Oracle Linux • Oracle VM • Oracle VM Template for MySQL EE • Oracle GoldenGate • Oracle Secure Backup • Oracle Database Firewall • My Oracle Online Support Capacidade de gerenciar BDs Oracle e MySQL com ferramentas/soluções Oracle que você já utiliza. 55
  • 56. Oracle Premier Support para MySQL Conte com Os Experts, obtenha benefícios singulares • Direto da Fonte • Maior time de especialistas MySQL • Contato com MySQL Developers Somente com • Hot Fixes a Oracle • Realeases de manutenção • Suporte MySQL em 29 línguas • Acesso direto aos engenheiros de suporte MySQL • 24x7x365 "The eng that assisted me was simply outstanding. He immediately • Número ilimitado de tickets recognized the cause of my problem and provided the resolution." • Knowledge Base -- (July 27, 2011) • Suporte Consultivo MySQL mysql.com/support/quotes.html 56
  • 57. Questões difíceis, soluções reais … problemas de performance? • MySQL Enterprise Scalability … servidores down? • MySQL Enterprise Monitor, Advisors, QUAN • Oracle Premier 7x24 Support • MySQL Consultative Support • MySQL Enterprise Monitor, Advisors • MySQL Enterprise High Availability … queries lentas, custosas? • MySQL Enterprise Monitor, Query Analyzer … política de segurança, muda? • MySQL External Authentication … onde, quando, como “tunar”? • MySQL Enterprise Monitor, Security Advisor • MySQL Enterprise Monitor, Advisors, QUAN • MySQL Consultative Support … produtividade de desenv./QA? • MySQL Workbench SE … problemas de replicação? • MySQL Enterprise Monitor, Query Analyzer • MySQL Enterprise Monitor, Replication Monitor • Oracle Premier 7x24 Support … qual versão do MySQL rodar? … os sistemas escalarão? • Oracle Premier 7x24 Support • MySQL Enterprise Scalability • MySQL Enterprise Monitor, Advisors, QUAN … posso recuperar? • MySQL Enterprise Backup • MySQL Consultative Support …gerenciar bases Oracle e MySQL? • Oracle Product Certifications 57
  • 58. Histórias de Clientes mysql.com/customers 58
  • 59. Mais informação mysql.com • MySQL Produtos e Edições • TCO calculator – teste vários cenários! • Artigos (White Papers) • Histórias de clientes e casos de sucesso • mysql.com/why-mysql/windows – PARADA OBRIGATÓRIA! ;) dev.mysql.com • Downloads • Documentação • Fóruns • Blog PlanetMySQL edelivery.oracle.com • Trial 30 dias dos produtos comerciais MySQL 59
  • 60. Obrigado! Time MySQL Brasil marcos.trujillo@oracle.com ana.guiselini@oracle.com airton.lastori@oracle.com @MySQLBR facebook.com/MySQLBR meetup.com/MySQL-BR 60