As migrações de banco de dados são uma parte essencial do desenvolvimento de aplicativos, pois permitem que os desenvolvedores controlem e gerenciem alterações no esquema de banco de dados de maneira consistente e estruturada. No PHP, o gerenciamento de migrações de banco de dados pode ser feito manualmente, mas é mais eficiente e menos propenso a usar uma ferramenta de migração que automatiza o processo. Uma ferramenta de migração fornece uma maneira organizada de lidar com mudanças de esquema, mantendo o banco de dados em sincronia com o código do aplicativo.
Neste artigo, exploraremos como gerenciar migrações de banco de dados no PHP, incluindo o uso de bibliotecas populares, melhores práticas e exemplos práticos.
As migrações de banco de dados são uma maneira de versificar as alterações no esquema do banco de dados (por exemplo, criar, atualizar ou excluir tabelas e colunas) e aplicar essas alterações de maneira controlada. As migrações permitem que as equipes:
Existem várias maneiras de lidar com as migrações de banco de dados no PHP, mas a abordagem mais comum é usar uma biblioteca de migração. Veja como fazer isso usando bibliotecas PHP populares como phinx e migrações da doutrina .
Phinx é uma ferramenta popular de migração de PHP que permite criar e executar migrações de banco de dados. Ele suporta várias plataformas de banco de dados, como MySQL, PostgreSQL, SQLite e outros.
para instalar o phinx, você pode usar o compositor para adicioná -lo como uma dependência.
composer require robmorgan/phinx
phinx requer um arquivo de configuração (phinx.php ou phinx.yml) para gerenciar configurações de conexão e outras opções de configuração. Aqui está um exemplo de configuração em phinx.php:
[ 'migrations' => 'db/migrations', 'seeds' => 'db/seeds' ], 'environments' => [ 'default' => 'development', 'development' => [ 'adapter' => 'mysql', 'host' => 'localhost', 'name' => 'your_database_name', 'user' => 'root', 'pass' => '', 'charset' => 'utf8', ], 'production' => [ 'adapter' => 'mysql', 'host' => 'production_host', 'name' => 'your_production_database', 'user' => 'prod_user', 'pass' => 'prod_password', 'charset' => 'utf8', ] ] ];
Esta configuração configura dois ambientes (desenvolvimento e produção), onde o Phinx gerenciará migrações para seus bancos de dados.
para criar uma migração, você pode usar o seguinte comando phinx:
php vendor/bin/phinx create CreateUsersTable
Este comando cria um arquivo de migração no diretório DB/migração. O arquivo de migração será algo assim:
table('users'); $table->addColumn('name', 'string') ->addColumn('email', 'string') ->create(); } }
Esta migração cria uma tabela de usuários com duas colunas: nome e email.
Depois que a migração for criada, você pode aplicar a migração ao banco de dados usando o seguinte comando:
php vendor/bin/phinx migrate
Phinx aplicará novas migrações que ainda não foram executadas. Você também pode especificar um ambiente específico:
php vendor/bin/phinx migrate -e production
PHP VENDOR/BIN/PHINX Rollback
php vendor/bin/phinx rollback
PHP VENDOR/BIN/PHINX Rollback -t 20210101000000
php vendor/bin/phinx rollback -t 20210101000000
Etapa 1: Instale as migrações de doutrina
composer require doctrine/migrationsEtapa 2: Configurar migrações de doutrina
Exemplo migrations.php Configuração:
Php
use doutrina \ dbal \ driverManager;
Use Doutrina \ Migrações \ Configuration \ Configuration;
Use Doutrina \ Migrações \ Tools \ Console \ Command;
Use Doutrina \ Migrações \ Tools \ Console \ Consolerunner;
// Configure a conexão do banco de dados
$ Conn = DriverManager :: getConnection ([
'url' => 'mysql: // root:@localhost/your_database_name',
]);
// Configure a configuração de migrações
$ config = nova configuração ($ conn);
$ config-> setMigrationsNamesPace ('App \ Migrações');
$ config-> setMigrationsDirectory ('db/migrações');
// Crie a ferramenta de migração
$ console = consolerunner :: createApplication ($ config);
$ console-> run ();
composer require doctrine/migrationsEtapa 3: Criando uma migração
PHP Vendor/Bin/Doutrina-Migrações geram
php vendor/bin/doctrine-migrations generate
Etapa 4: Executando migrações
PHP Vendor/Bin/Doutrina-Migrações Migrate
php vendor/bin/doctrine-migrations migrate
Etapa 5: Rolling Back Migrações
PHP VENDOR/BIN/Doutrina-Migrações Execute-Down
php vendor/bin/doctrine-migrations execute --down
ou migrações de doutrina fornece uma maneira estruturada e automatizada de gerenciar o esquema do banco de dados. Essas ferramentas ajudam a evitar erros manuais, manter a consistência entre os ambientes e garantir que seu esquema de banco de dados evoluir de maneira controlada e de versão. usando essas ferramentas, você pode se concentrar na criação da lógica do aplicativo, garantindo que seu banco de dados esteja sempre em sincronia com as alterações no seu código.
Isenção de responsabilidade: Todos os recursos fornecidos são parcialmente provenientes da Internet. Se houver qualquer violação de seus direitos autorais ou outros direitos e interesses, explique os motivos detalhados e forneça prova de direitos autorais ou direitos e interesses e envie-a para o e-mail: [email protected]. Nós cuidaremos disso para você o mais rápido possível.
Copyright© 2022 湘ICP备2022001581号-3