{"id":27412,"date":"2021-05-15T19:29:00","date_gmt":"2021-05-15T16:29:00","guid":{"rendered":"https:\/\/themewp.inform.click\/?p=27412"},"modified":"2021-10-18T04:14:07","modified_gmt":"2021-10-18T01:14:07","slug":"como-fazer-backup-de-seu-banco-de-dados-mysql-usando-php","status":"publish","type":"post","link":"https:\/\/themewp.inform.click\/pt-pt\/como-fazer-backup-de-seu-banco-de-dados-mysql-usando-php\/","title":{"rendered":"Como fazer backup de seu banco de dados MySQL usando PHP"},"content":{"rendered":"<p>Voc\u00ea est\u00e1 procurando fazer backup de banco de dados em seus projetos PHP? \u00c9 sempre recomend\u00e1vel fazer backup de seu banco de dados periodicamente. Assim, os dados do seu site estar\u00e3o sempre seguros caso ocorra algum problema com o seu banco de dados. Neste artigo, mostramos como fazer backup do banco de dados MySQL periodicamente e armazen\u00e1-lo em seu servidor.<\/p>\n<p>Este artigo foi escrito para os projetos que t\u00eam o n\u00facleo do PHP integrado e n\u00e3o com nenhum CMS ou Framework. O CMS, como o WordPress, tem v\u00e1rios plug-ins dispon\u00edveis, como o UpdraftPlus, para <a href=\"https:\/\/themewp.inform.click\/pt-pt\/?p=27085\" title=\"fazer backup do banco de dados\" >fazer backup do banco de dados<\/a>. Nos sites Laravel, o usu\u00e1rio pode usar pacotes como o <a href=\"https:\/\/themewp.inform.click\/pt-pt\/como-fazer-backup-do-aplicativo-laravel\/\" title=\"laravel-backup\" >laravel-backup<\/a> para os mesmos fins.<\/p>\n<p><a href=\"https:\/\/spatie.be\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">A<\/a> equipe de <a href=\"https:\/\/spatie.be\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">Spatie<\/a> desenvolveu o <a href=\"https:\/\/github.com\/spatie\/db-dumper\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">pacote<\/a> que \u00e9 \u00fatil para fazer backup de banco de dados em projetos principais de PHP. Este pacote oferece suporte para MySQL, PostgreSQL, SQLite e MongoDB. Discutiremos o banco de dados MySQL neste artigo. Dito isso, vamos dar uma olhada em como este pacote funciona no backup de seu banco de dados.<\/p>\n<h3>Backup de banco de dados MySQL usando PHP<\/h3>\n<p>Antes de prosseguir, certifique-se de ter suas credenciais de banco de dados e o <a href=\"https:\/\/getcomposer.org\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">Composer<\/a> est\u00e1 instalado em seu sistema.<\/p>\n<p>Em seguida, abra o terminal no diret\u00f3rio raiz do seu projeto e execute o comando abaixo para instalar o pacote.<\/p>\n<pre><code>composer require spatie\/db-dumper<\/code><\/pre>\n<p>Ap\u00f3s a instala\u00e7\u00e3o do pacote, crie um diret\u00f3rio <code>db-backups<\/code>(voc\u00ea pode dar qualquer nome) onde pode armazenar seus arquivos de backup SQL. Crie tamb\u00e9m um arquivo <code>backup-database.php<\/code>e adicione o c\u00f3digo abaixo nele.<\/p>\n<pre><code>&lt;?php\nrequire_once \"vendor\/autoload.php\";\n\u00a0\nSpatieDbDumperDatabasesMySql::create()\n\u00a0\u00a0\u00a0\u00a0-&gt;setDbName('DB_NAME')\n\u00a0\u00a0\u00a0\u00a0-&gt;setUserName('DB_USER_NAME')\n\u00a0\u00a0\u00a0\u00a0-&gt;setPassword('DB_PASSWORD')\n\u00a0\u00a0\u00a0\u00a0-&gt;dumpToFile('db-backups\/'.time().'_dump.sql');<\/code><\/pre>\n<p>Certifique-se de substituir os marcadores pelos valores reais. No c\u00f3digo acima, acrescentamos a hora atual ao arquivo SQL para manter nomes de arquivo distintos. Ele ir\u00e1 despejar seu banco de dados e armazen\u00e1-lo no arquivo SQL fornecido.<\/p>\n<p>O pacote oferece mais op\u00e7\u00f5es enquanto despeja o banco de dados. Por exemplo, voc\u00ea pode excluir tabelas espec\u00edficas do backup, fornecendo a matriz de tabelas de exclus\u00e3o conforme abaixo.<\/p>\n<pre><code>&lt;?php\nSpatieDbDumperDatabasesMySql::create()\n\u00a0\u00a0\u00a0\u00a0-&gt;setDbName('DB_NAME')\n\u00a0\u00a0\u00a0\u00a0-&gt;setUserName('DB_USER_NAME')\n\u00a0\u00a0\u00a0\u00a0-&gt;setPassword('DB_PASSWORD')\n\u00a0\u00a0\u00a0\u00a0-&gt;excludeTables(['table1', 'table2', 'table3'])\n\u00a0\u00a0\u00a0\u00a0-&gt;dumpToFile('db-backups\/'.time().'_dump.sql');<\/code><\/pre>\n<h3>Backup autom\u00e1tico do banco de dados MySQL<\/h3>\n<p>At\u00e9 agora, voc\u00ea tem um arquivo PHP que faz o backup do seu banco de dados. A pr\u00f3xima coisa que precisa fazer \u00e9 automatizar o processo de backup para que voc\u00ea obtenha seus backups sem executar o script manualmente.<\/p>\n<p>Quando voc\u00ea hospeda um site no servidor, seu provedor de hospedagem lhe d\u00e1 o cPanel, onde voc\u00ea pode ver as op\u00e7\u00f5es b\u00e1sicas e avan\u00e7adas para gerenciar o site. Um recurso fornecido por eles \u00e9 &#8216;Cron Jobs&#8217;. As tarefas Cron permitem que voc\u00ea execute um script espec\u00edfico (arquivo PHP) em um determinado intervalo em segundo plano. Tudo que voc\u00ea precisa fazer \u00e9 definir um intervalo e passar um caminho de diret\u00f3rio do arquivo PHP. Depois disso, o servidor executa o script em segundo plano nos intervalos especificados.<\/p>\n<p>Para definir um Cron, acesse seu cPanel e clique em &#8216;Cron Jobs&#8217; que voc\u00ea pode encontrar na se\u00e7\u00e3o &#8216;avan\u00e7ado&#8217;.<\/p>\n<p><a href=\"https:\/\/themewp.inform.click\/wp-content\/uploads\/2021\/04\/post-20601-60820cd083738.png\" data-rel=\"lightbox\"><img decoding=\"async\" class=\"SDStudio-light-box-enable SDStudio-editor-tools-md-imp\" src=\"https:\/\/themewp.inform.click\/wp-content\/uploads\/2021\/04\/post-20601-60820cd083738.png\" alt=\"Como fazer backup de seu banco de dados MySQL usando PHP\" ><\/a><\/p>\n<p>Na pr\u00f3xima p\u00e1gina, na se\u00e7\u00e3o &#8216;Adicionar um Novo Cron Job&#8217;, escolha &#8216;Uma vez por dia&#8217; para a lista suspensa &#8216;Configura\u00e7\u00f5es comuns&#8217;. Isso significa que seu script ser\u00e1 executado uma vez por dia. O usu\u00e1rio pode definir qualquer intervalo, dependendo da necessidade.<\/p>\n<p><a href=\"https:\/\/themewp.inform.click\/wp-content\/uploads\/2021\/04\/post-20601-60820cd11b583.png\" data-rel=\"lightbox\"><img decoding=\"async\" class=\"SDStudio-light-box-enable SDStudio-editor-tools-md-imp\" src=\"https:\/\/themewp.inform.click\/wp-content\/uploads\/2021\/04\/post-20601-60820cd11b583.png\" alt=\"Como fazer backup de seu banco de dados MySQL usando PHP\" ><\/a><\/p>\n<p>Na se\u00e7\u00e3o de comando, passe o caminho do arquivo PHP da seguinte maneira:<\/p>\n<pre><code>php \/home\/username\/public_html\/backup-database.php<\/code><\/pre>\n<p>Ajuste o caminho do script de acordo com suas configura\u00e7\u00f5es de hospedagem e envie-o. Depois disso, seu servidor come\u00e7a a executar um script diariamente \u00e0 meia-noite. E este script ir\u00e1 armazenar automaticamente seu banco de dados MySQL no diret\u00f3rio especificado (por exemplo, db-backups).<\/p>\n<p>Esperamos que voc\u00ea entenda como fazer backup do banco de dados MySQL em PHP e automatizar o processo usando Cron. Gostar\u00edamos de ouvir suas opini\u00f5es ou sugest\u00f5es na se\u00e7\u00e3o de coment\u00e1rios abaixo.<\/p>\n<p><div id=\"PostUnique_PostSource\" style=\"padding-top: 50px\">Fonte de grava\u00e7\u00e3o:  <a target=\"_blank\" rel=\"noopener nofollow\" href=\"\/\/artisansweb.net\" class=\"external external_icon\">artisansweb.net<\/a><\/div><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Neste artigo, estudamos como fazer backup do banco de dados MySQL usando PHP e automatizar o processo por meio de Cron Jobs. Fazendo isso, voc\u00ea obter\u00e1 seu banco de dados<\/p>\n","protected":false},"author":1,"featured_media":21761,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":"","_wp_rev_ctl_limit":""},"categories":[278],"tags":[848],"class_list":["post-27412","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-php-9","tag-affiai-pt-pt"],"_links":{"self":[{"href":"https:\/\/themewp.inform.click\/pt-pt\/wp-json\/wp\/v2\/posts\/27412","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/themewp.inform.click\/pt-pt\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/themewp.inform.click\/pt-pt\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/themewp.inform.click\/pt-pt\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/themewp.inform.click\/pt-pt\/wp-json\/wp\/v2\/comments?post=27412"}],"version-history":[{"count":0,"href":"https:\/\/themewp.inform.click\/pt-pt\/wp-json\/wp\/v2\/posts\/27412\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/themewp.inform.click\/pt-pt\/wp-json\/wp\/v2\/media\/21761"}],"wp:attachment":[{"href":"https:\/\/themewp.inform.click\/pt-pt\/wp-json\/wp\/v2\/media?parent=27412"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/themewp.inform.click\/pt-pt\/wp-json\/wp\/v2\/categories?post=27412"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/themewp.inform.click\/pt-pt\/wp-json\/wp\/v2\/tags?post=27412"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}