Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Trabalhando com mecanismos de banco de dados MySQL


Este artigo é uma introdução ao trabalho com mecanismos de banco de dados no MySQL.
Para seguir alguns dos procedimentos deste artigo, você deve ter acesso root ao servidor.

Sobre mecanismos de banco de dados MySQL


Os mecanismos de banco de dados fornecem a funcionalidade subjacente para o MySQL trabalhar e processar dados.

Os dois mecanismos de banco de dados MySQL mais comuns e populares são MyISAM e InnoDB . MyISAM é o mecanismo padrão do MySQL para versões anteriores à 5.5.5 e funciona bem na maioria dos cenários. No entanto, dependendo de suas necessidades, existem situações em que outro mecanismo de banco de dados, como o InnoDB, pode ser a melhor escolha. Por exemplo, o InnoDB suporta transações, enquanto o MyISAM não. O InnoDB também fornece suporte para chaves estrangeiras, enquanto o MyISAM não.

Se você tem acesso root ao seu servidor, você tem controle total sobre como e quando o MySQL usa os vários mecanismos de banco de dados. Você pode alterar o mecanismo de banco de dados padrão, alterar o mecanismo de banco de dados de uma tabela específica e muito mais.
Este artigo assume que você já sabe como acessar o MySQL a partir da linha de comando usando o mysql programa. Se você não sabe como fazer isso, leia este artigo primeiro.

Determinando o mecanismo de banco de dados padrão


Para determinar o mecanismo de banco de dados padrão para sua instalação, digite o seguinte comando no mysql> incitar:
SHOW ENGINES;

Uma lista de mecanismos com suporte é exibida, juntamente com uma breve descrição e os recursos com suporte para cada mecanismo. O mecanismo de banco de dados padrão está marcado como DEFAULT no Suporte coluna.

Alterando o mecanismo de banco de dados padrão


Você pode alterar o mecanismo de banco de dados padrão para sua instalação do MySQL. Depois de fazer isso, todas as novas tabelas que você criar usarão o novo mecanismo de banco de dados (a menos que você defina explicitamente o mecanismo durante a criação da tabela).

Para alterar o mecanismo de banco de dados padrão, siga estas etapas:
  1. Use seu editor de texto preferido para abrir o my.cnf arquivo em seu servidor. A localização do my.cnf arquivo depende da sua distribuição Linux:
    • No CentOS e no Fedora, o my.cnf arquivo está localizado em /etc diretório.
    • No Debian e no Ubuntu, o my.cnf arquivo está localizado em /etc/mysql diretório.
  2. No my.cnf arquivo, localize o [mysqld] seção.

  3. Adicione ou modifique a seguinte linha no [mysqld] seção. Substitua MOTOR com o nome do mecanismo que você deseja usar como padrão:

    default-storage-engine=ENGINE

    Se você estiver habilitando o mecanismo de banco de dados InnoDB, dependendo da sua distribuição Linux, talvez seja necessário desabilitar a seguinte linha no my.cnf Arquivo:
    skip-innodb

    Para fazer isso, basta adicionar um sinal de sustenido (# ) para o início da linha, como segue:
    #skip-innodb
  4. Salve as alterações no my.cnf arquivo e saia do editor de texto.

  5. Reinicie o servidor MySQL usando o comando apropriado para sua distribuição Linux:

    • Para CentOS e Fedora, digite:
      service mysqld restart

    • Para Debian e Ubuntu, digite:

      service mysql restart
  6. Para confirmar o novo mecanismo de banco de dados padrão, use MOSTRAR MOTORES Instrução SQL conforme descrito na seção Determinando o mecanismo de banco de dados padrão.

Determinando o mecanismo de banco de dados atual de uma tabela


Para determinar qual mecanismo uma tabela de banco de dados está usando no momento, digite o seguinte comando no mysql> incitar. Substituir banco de dados com o nome do banco de dados que você deseja verificar:
SELECT TABLE_NAME, ENGINE FROM information_schema.TABLES where TABLE_SCHEMA = 'database';

Este comando exibe uma lista de todas as tabelas do banco de dados, juntamente com o mecanismo que cada tabela está usando.

Alterando o mecanismo de banco de dados de uma tabela


Você pode alterar o mecanismo de banco de dados de uma tabela que já existe. Por exemplo, a instrução SQL a seguir mostra como modificar uma tabela chamada myTable para usar o mecanismo InnoDB:
ALTER TABLE myTable ENGINE = InnoDB;

Criando uma nova tabela com um mecanismo de banco de dados específico


Ao criar uma tabela em um banco de dados, você pode definir explicitamente seu mecanismo de banco de dados (caso contrário, o MySQL usa o mecanismo de banco de dados padrão durante a criação da tabela). Por exemplo, a instrução SQL a seguir mostra como criar uma tabela chamada myTable que usa o mecanismo de banco de dados MyISAM:
CREATE TABLE myTable (
       id INT NOT NULL AUTO_INCREMENT,
       PRIMARY KEY (id),
       data VARCHAR(20) NOT NULL
) ENGINE MyISAM;

Da mesma forma, para criar uma tabela que usa o mecanismo de banco de dados InnoDB, você pode usar a seguinte instrução SQL:
CREATE TABLE myTable (
       id INT NOT NULL AUTO_INCREMENT,
       PRIMARY KEY (id),
       data VARCHAR(20) NOT NULL
) ENGINE InnoDB;

Mais informações

  • Para obter mais informações sobre o mecanismo MyISAM, visite http://dev.mysql.com/doc/refman/5.5/en/myisam-storage-engine.html.
  • Para obter mais informações sobre o mecanismo InnoDB, visite http://dev.mysql.com/doc/refman/5.5/en/innodb-storage-engine.html.