{"id":4661,"date":"2026-06-14T19:31:06","date_gmt":"2026-06-14T19:31:06","guid":{"rendered":"https:\/\/cloudsave.app\/?p=4661"},"modified":"2026-06-14T19:44:42","modified_gmt":"2026-06-14T19:44:42","slug":"l-assass%c3%ad-silenci%c3%b3s-com-detectar-c%c3%b2pies-de-seguretat-de-bases-de-dades-corruptes-abans-que-es-produeixi-un-desastre","status":"publish","type":"post","link":"https:\/\/cloudsave.app\/ca\/knowledge-base\/l-assass%c3%ad-silenci%c3%b3s-com-detectar-c%c3%b2pies-de-seguretat-de-bases-de-dades-corruptes-abans-que-es-produeixi-un-desastre\/","title":{"rendered":"L&#8217;assass\u00ed silenci\u00f3s: Com detectar c\u00f2pies de seguretat de bases de dades corruptes abans que es produeixi un desastre"},"content":{"rendered":"<p>En l&#8217;alt risc del m\u00f3n de l&#8217;administraci\u00f3 de bases de dades i l&#8217;enginyeria de fiabilitat del lloc (SRE), hi ha un axioma ben conegut: la <em>c\u00f2pia de seguretat de Schr\u00f6dinger<\/em>. L&#8217;estat de qualsevol c\u00f2pia de seguretat \u00e9s desconegut fins que intentes restaurar-la. Fins a aquest moment, existeix en un estat qu\u00e0ntic de ser alhora perfectament viable i completament corrompuda.<\/p>\n<p>Per als enginyers de DevOps i els administradors de bases de dades (DBA), descobrir que una c\u00f2pia de seguretat cr\u00edtica est\u00e0 corrompuda durant un incident actiu \u00e9s el malson definitiu. Transforma una operaci\u00f3 de recuperaci\u00f3 rutin\u00e0ria en un esdeveniment catastr\u00f2fic de p\u00e8rdua de dades. Aquest \u00abassass\u00ed silenci\u00f3s\u00bb de la integritat de les dades sovint passa desapercebut perqu\u00e8 les tasques de c\u00f2pia de seguretat sovint informen d&#8217;un <code>Exit Code 0<\/code> (codi de sortida 0) correcte, fins i tot quan la c\u00e0rrega \u00fatil subjacent est\u00e0 compromesa.<\/p>\n<p>En aquesta guia exhaustiva, disseccionarem l&#8217;anatomia de la corrupci\u00f3 de les c\u00f2pies de seguretat, explorarem t\u00e8cniques de validaci\u00f3 espec\u00edfiques per a bases de dades i demostrarem com construir pipelines de restauraci\u00f3 automatitzats i a prova de bombes per a entorns de producci\u00f3.<\/p>\n<h2>L&#8217;anatomia de la corrupci\u00f3 de les c\u00f2pies de seguretat<\/h2>\n<p>Per detectar la corrupci\u00f3, primer heu d&#8217;entendre com es produeix. La corrupci\u00f3 de les c\u00f2pies de seguretat generalment es divideix en dues categories: f\u00edsica (a nivell d&#8217;infraestructura) i l\u00f2gica (a nivell d&#8217;aplicaci\u00f3).<\/p>\n<h3>Corrupci\u00f3 f\u00edsica<\/h3>\n<p>La corrupci\u00f3 f\u00edsica es produeix quan s&#8217;alteren els bits reals del suport d&#8217;emmagatzematge. Aix\u00f2 pot passar durant el proc\u00e9s de lectura des del disc d&#8217;origen, durant el tr\u00e0nsit per la xarxa o en rep\u00f2s a l&#8217;emmagatzematge de destinaci\u00f3.<br \/>\n*   <strong>Bit Rot (degradaci\u00f3 de bits):<\/strong> La degradaci\u00f3 gradual dels suports d&#8217;emmagatzematge pot invertir bits silenciosament.<br \/>\n*   <strong>Errors de tr\u00e0nsit:<\/strong> Tot i que el TCP t\u00e9 sumes de verificaci\u00f3 (checksums), s\u00f3n not\u00f2riament febles (16 bits). Els entorns d&#8217;alt rendiment poden experimentar corrupci\u00f3 de dades silenciosa a trav\u00e9s del cable que el TCP no detecta.<br \/>\n*   <strong>Errors del controlador d&#8217;emmagatzematge:<\/strong> Els errors de maquinari en els controladors RAID o les estructures SAN poden escriure dades brossa mentre informen d&#8217;\u00e8xit al sistema operatiu.<\/p>\n<h3>Corrupci\u00f3 l\u00f2gica<\/h3>\n<p>La corrupci\u00f3 l\u00f2gica \u00e9s, sens dubte, m\u00e9s perillosa perqu\u00e8 el fitxer de c\u00f2pia de seguretat en si est\u00e0 perfectament intacte, per\u00f2 les dades que cont\u00e9 estan trencades.<br \/>\n*   <strong>Garbage In, Garbage Out (GIGO):<\/strong> Si la vostra base de dades en viu t\u00e9 un \u00edndex corromput o una p\u00e0gina trencada, la vostra eina de c\u00f2pia de seguretat podria copiar fidelment aquesta p\u00e0gina corrompuda. La tasca de c\u00f2pia de seguretat t\u00e9 \u00e8xit, per\u00f2 la restauraci\u00f3 fallar\u00e0 o produir\u00e0 una base de dades trencada.<br \/>\n*   <strong>Transaccions incompletes:<\/strong> Les instant\u00e0nies (snapshots) a nivell de sistema de fitxers preses sense congelar correctament l&#8217;E\/S de la base de dades (p. ex., no utilitzar <code>FLUSH TABLES WITH READ LOCK<\/code> a MySQL) donen lloc a p\u00e0gines trencades i estats irrecuperables.<\/p>\n<h2>Detecci\u00f3 proactiva: sumes de verificaci\u00f3 i hashing criptogr\u00e0fic<\/h2>\n<p>La primera l\u00ednia de defensa contra la corrupci\u00f3 f\u00edsica \u00e9s la validaci\u00f3 criptogr\u00e0fica. Confiar en la mida dels fitxers o en les dates de modificaci\u00f3 \u00e9s insuficient.<\/p>\n<h3>Habilitaci\u00f3 de sumes de verificaci\u00f3 a nivell de base de dades<\/h3>\n<p>Els sistemes de gesti\u00f3 de bases de dades relacionals (RDBMS) moderns admeten sumes de verificaci\u00f3 a nivell de p\u00e0gina. Quan s&#8217;habilita, la base de dades calcula una suma de verificaci\u00f3 per a cada p\u00e0gina abans d&#8217;escriure-la al disc. Quan es llegeix la p\u00e0gina (ja sigui per una consulta o per un proc\u00e9s de c\u00f2pia de seguretat), es verifica la suma de verificaci\u00f3.<\/p>\n<p>Per a <strong>PostgreSQL<\/strong>, podeu habilitar les sumes de verificaci\u00f3 de dades durant la inicialitzaci\u00f3 del cl\u00faster:<\/p>\n<pre><code class=\"language-bash\"># Inicialitzar un nou cl\u00faster de PostgreSQL amb sumes de verificaci\u00f3 habilitades\ninitdb --data-checksums -D \/var\/lib\/postgresql\/data\n<\/code><\/pre>\n<p><em>Nota: Si teniu un cl\u00faster de PostgreSQL existent, podeu utilitzar la utilitat <code>pg_checksums<\/code> per habilitar-les fora de l\u00ednia.<\/em><\/p>\n<p>Per a <strong>Microsoft SQL Server<\/strong>, assegureu-vos que <code>PAGE_VERIFY<\/code> estigui configurat com a <code>CHECKSUM<\/code> (el valor predeterminat en versions modernes, per\u00f2 val la pena verificar-ho en sistemes antics):<\/p>\n<pre><code class=\"language-sql\">ALTER DATABASE [ProductionDB] SET PAGE_VERIFY CHECKSUM;\nGO\n<\/code><\/pre>\n<h3>Validaci\u00f3 de c\u00f2pies de seguretat en rep\u00f2s<\/h3>\n<p>Un cop la c\u00f2pia de seguretat arriba al vostre dest\u00ed d&#8217;emmagatzematge, la seva integritat s&#8217;ha de verificar criptogr\u00e0ficament. Les plataformes de c\u00f2pia de seguretat empresarials com CloudSave calculen i verifiquen autom\u00e0ticament els hashes SHA-256 dels blocs de c\u00f2pia de seguretat durant el tr\u00e0nsit i en rep\u00f2s. Si gestioneu scripts personalitzats, heu d&#8217;implementar-ho manualment:<\/p>\n<pre><code class=\"language-bash\"># Generar hash SHA-256 despr\u00e9s de la creaci\u00f3 de la c\u00f2pia de seguretat\nsha256sum prod_db_backup.tar.gz &gt; prod_db_backup.tar.gz.sha256\n\n# Verificar el hash al servidor d'emmagatzematge\nsha256sum -c prod_db_backup.tar.gz.sha256\n<\/code><\/pre>\n<h2>T\u00e8cniques de validaci\u00f3 espec\u00edfiques per a bases de dades<\/h2>\n<p>Diferents motors de bases de dades ofereixen eines natives per verificar la integritat dels seus artefactes de c\u00f2pia de seguretat.<\/p>\n<h3>PostgreSQL: <code>pg_verifybackup<\/code><\/h3>\n<p>Introdu\u00eft a PostgreSQL 13, <code>pg_verifybackup<\/code> \u00e9s un canvi de joc per a les c\u00f2pies de seguretat f\u00edsiques preses amb <code>pg_basebackup<\/code>. Llegeix el fitxer <code>backup_manifest<\/code> generat durant la c\u00f2pia de seguretat i verifica que tots els fitxers estiguin presents i que les seves sumes de verificaci\u00f3 coincideixin.<\/p>\n<pre><code class=\"language-bash\"># Executar la verificaci\u00f3 contra un directori de c\u00f2pia de seguretat f\u00edsica base\npg_verifybackup \/mnt\/backups\/postgres\/base_backup_20231025\/\n<\/code><\/pre>\n<p>Si s&#8217;ha invertit un sol bit en qualsevol dels fitxers de dades, <code>pg_verifybackup<\/code> llan\u00e7ar\u00e0 un error fatal, permetent que els vostres sistemes de monitoritzaci\u00f3 alertin l&#8217;equip de DBA immediatament.<\/p>\n<h3>Microsoft SQL Server: <code>RESTORE VERIFYONLY<\/code><\/h3>\n<p>SQL Server proporciona una ordre nativa per verificar la integritat f\u00edsica d&#8217;un fitxer de c\u00f2pia de seguretat sense restaurar-lo realment. Comprova les cap\u00e7aleres de la c\u00f2pia de seguretat i valida les sumes de verificaci\u00f3 de p\u00e0gina (si estaven habilitades durant la c\u00f2pia de seguretat).<\/p>\n<pre><code class=\"language-sql\">RESTORE VERIFYONLY \nFROM DISK = 'Z:BackupsProdDB_Full.bak' \nWITH CHECKSUM;\n<\/code><\/pre>\n<p><strong>Av\u00eds:<\/strong> <code>RESTORE VERIFYONLY<\/code> nom\u00e9s confirma que el fitxer de c\u00f2pia de seguretat \u00e9s llegible i que les sumes de verificaci\u00f3 f\u00edsiques coincideixen. <em>No<\/em> garanteix la integritat l\u00f2gica. Per garantir la integritat l\u00f2gica, heu de realitzar una restauraci\u00f3 completa i executar <code>DBCC CHECKDB<\/code>.<\/p>\n<h3>MySQL \/ InnoDB: Percona XtraBackup<\/h3>\n<p>Per als entorns MySQL, les c\u00f2pies de seguretat f\u00edsiques sovint s\u00f3n gestionades per Percona XtraBackup. El proc\u00e9s de c\u00f2pia de seguretat consisteix a copiar fitxers, per\u00f2 la c\u00f2pia de seguretat no \u00e9s consistent fins que s&#8217;apliquen els registres de transaccions (redo logs). La fase <code>--prepare<\/code> actua com una comprovaci\u00f3 d&#8217;integritat integrada.<\/p>\n<pre><code class=\"language-bash\"># La preparaci\u00f3 de la c\u00f2pia de seguretat aplica els redo logs. \n# Si la c\u00f2pia de seguretat est\u00e0 corrompuda, aquest pas fallar\u00e0.\nxtrabackup --prepare --target-dir=\/data\/backups\/mysql\/\n<\/code><\/pre>\n<h2>L&#8217;est\u00e0ndard d&#8217;or: proves de restauraci\u00f3 automatitzades<\/h2>\n<p>Les sumes de verificaci\u00f3 i les ordres de verificaci\u00f3 s\u00f3n necess\u00e0ries, per\u00f2 no s\u00f3n suficients. L&#8217;\u00fanica manera de demostrar definitivament que una c\u00f2pia de seguretat \u00e9s viable \u00e9s restaurar-la. En els entorns DevOps moderns, aquest proc\u00e9s ha d&#8217;estar totalment automatitzat.<\/p>\n<p>Tractant les c\u00f2pies de seguretat com a codi, podeu construir un pipeline de CI\/CD per a les restauracions de la vostra base de dades. Aquest pipeline hauria d&#8217;aprovisionar infraestructura ef\u00edmera, executar la restauraci\u00f3, executar consultes de validaci\u00f3 i eliminar l&#8217;entorn.<\/p>\n<h3>Construcci\u00f3 d&#8217;un pipeline de restauraci\u00f3 automatitzat<\/h3>\n<p>A continuaci\u00f3 es mostra un exemple d&#8217;un script de Bash que podria ser activat di\u00e0riament per una tasca cron o un runner de CI (com GitLab CI o GitHub Actions) per validar un dump l\u00f2gic de PostgreSQL.<\/p>\n<pre><code class=\"language-bash\">#!\/bin\/bash\nset -e\n\nBACKUP_FILE=&quot;\/mnt\/storage\/prod_db_latest.dump&quot;\nDB_NAME=&quot;prod_db&quot;\nCONTAINER_NAME=&quot;pg_restore_test&quot;\n\necho &quot;[INFO] Iniciant prova de restauraci\u00f3 automatitzada...&quot;\n\n# 1. Iniciar un contenidor ef\u00edmer de PostgreSQL\ndocker run --name $CONTAINER_NAME \n  -e POSTGRES_PASSWORD=testpass \n  -d postgres:15\n\n# Esperar que PostgreSQL estigui llest\necho &quot;[INFO] Esperant que la base de dades s'inicialitzi...&quot;\nuntil docker exec $CONTAINER_NAME pg_isready -U postgres; do\n  sleep 2\ndone\n\n# 2. Crear la base de dades de destinaci\u00f3\ndocker exec $CONTAINER_NAME psql -U postgres -c &quot;CREATE DATABASE $DB_NAME;&quot;\n\n# 3. Executar la restauraci\u00f3\necho &quot;[INFO] Restaurant c\u00f2pia de seguretat...&quot;\ndocker cp $BACKUP_FILE $CONTAINER_NAME:\/tmp\/backup.dump\ndocker exec $CONTAINER_NAME pg_restore -U postgres -d $DB_NAME -1 \/tmp\/backup.dump\n\n# 4. Executar consultes de validaci\u00f3 l\u00f2gica\necho &quot;[INFO] Executant consultes de validaci\u00f3...&quot;\n# Comprovar si la taula d'usuaris t\u00e9 m\u00e9s de 10.000 registres\nUSER_COUNT=$(docker exec $CONTAINER_NAME psql -U postgres -d $DB_NAME -t -c &quot;SELECT COUNT(*) FROM users;&quot;)\n\nif [ &quot;$USER_COUNT&quot; -lt 10000 ]; then\n    echo &quot;[ERROR] La validaci\u00f3 l\u00f2gica ha fallat. S'esperaven &gt;10000 usuaris, s'han trobat $USER_COUNT&quot;\n    # Activar alerta de PagerDuty \/ Slack aqu\u00ed\n    exit 1\nelse\n    echo &quot;[SUCCESS] Validaci\u00f3 l\u00f2gica superada. Recompte d'usuaris: $USER_COUNT&quot;\nfi\n\n# 5. Eliminar l'entorn ef\u00edmer\necho &quot;[INFO] Netejant...&quot;\ndocker rm -f $CONTAINER_NAME\n\necho &quot;[INFO] Prova de restauraci\u00f3 automatitzada completada amb \u00e8xit.&quot;\n<\/code><\/pre>\n<h3>Qu\u00e8 haur\u00edeu de validar?<\/h3>\n<p>Quan realitzeu proves de restauraci\u00f3 automatitzades, no us limiteu a comprovar si la base de dades s&#8217;inicia. Executeu consultes de validaci\u00f3 espec\u00edfiques de l&#8217;aplicaci\u00f3:<br \/>\n1.  <strong>Recompte de files:<\/strong> Assegureu-vos que les taules principals tinguin el recompte de files esperat (p. ex., la taula <code>users<\/code> no hauria d&#8217;estar buida).<br \/>\n2.  <strong>Dades recents:<\/strong> Consulteu els registres creats en les \u00faltimes 24 hores per assegurar-vos que la c\u00f2pia de seguretat no estigui obsoleta.<br \/>\n3.  <strong>Integritat referencial:<\/strong> Executeu scripts per comprovar si hi ha claus externes orfes, que indiquen corrupci\u00f3 l\u00f2gica.<\/p>\n<h2>Monitoritzaci\u00f3 i alertes per a anomalies en les c\u00f2pies de seguretat<\/h2>\n<p>Detectar la corrupci\u00f3 abans que es produeixi el desastre requereix una observabilitat robusta. M\u00e9s enll\u00e0 dels estats binaris d&#8217;\u00e8xit\/error, haur\u00edeu de monitoritzar les metadades de les vostres tasques de c\u00f2pia de seguretat per detectar anomalies.<\/p>\n<h3>Monitoritzaci\u00f3 heur\u00edstica<\/h3>\n<p>Integreu les metadades de les vostres c\u00f2pies de seguretat a Prometheus i visualitzeu-les amb Grafana. Configureu alertes per a les seg\u00fcents heur\u00edstiques:<br \/>\n*   <strong>Caigudes sobtades de mida:<\/strong> Si la vostra c\u00f2pia de seguretat di\u00e0ria \u00e9s constantment de 500 GB i la d&#8217;avui \u00e9s de 50 MB, \u00e9s possible que la tasca s&#8217;hagi completat amb \u00e8xit (Exit Code 0), per\u00f2 probablement ha fet una c\u00f2pia de seguretat d&#8217;un esquema buit.<br \/>\n*   <strong>Anomalies de durada:<\/strong> Si una c\u00f2pia de seguretat que normalment triga 2 hores acaba en 5 minuts, s&#8217;ha saltat alguna cosa. Per contra, si triga 10 hores, \u00e9s possible que tingueu una degradaci\u00f3 de l&#8217;E\/S del disc que podria provocar corrupci\u00f3.<br \/>\n*   <strong>Acumulaci\u00f3 de registres WAL\/Archive:<\/strong> Si la vostra base de dades est\u00e0 generant registres d&#8217;escriptura pr\u00e8via (WAL) per\u00f2 el sistema de c\u00f2pia de seguretat no els est\u00e0 arxivant prou r\u00e0pid, correu el risc de tenir un buit en la vostra cadena de recuperaci\u00f3 puntual (PITR).<\/p>\n<h2>Implementaci\u00f3 de la regla 3-2-1 amb comprovacions d&#8217;integritat<\/h2>\n<p>La regla de c\u00f2pia de seguretat 3-2-1 est\u00e0ndard del sector (3 c\u00f2pies de dades, 2 suports diferents, 1 fora de lloc) nom\u00e9s \u00e9s efectiva si totes les c\u00f2pies estan verificades.<\/p>\n<p>Aqu\u00ed \u00e9s on aprofitar una soluci\u00f3 empresarial com CloudSave redueix dr\u00e0sticament la c\u00e0rrega operativa. En lloc d&#8217;escriure i mantenir scripts bash complexos per a cada node de base de dades, CloudSave s&#8217;integra directament amb la vostra infraestructura per automatitzar el cicle de vida 3-2-1. Proporciona emmagatzematge immutable \u2014protegint contra el ransomware\u2014 i inclou programacions de verificaci\u00f3 de restauraci\u00f3 automatitzades integrades. CloudSave pot iniciar autom\u00e0ticament entorns sandbox a\u00efllats, muntar la c\u00f2pia de seguretat, executar els vostres scripts de validaci\u00f3 SQL personalitzats i informar de l&#8217;estat de salut al vostre tauler central.<\/p>\n<h2>Conclusi\u00f3<\/h2>\n<p>Les c\u00f2pies de seguretat de bases de dades corrompudes s\u00f3n un assass\u00ed silenci\u00f3s que pot destruir empreses. Confiar \u00fanicament en el <code>Exit Code 0<\/code> d&#8217;un script de c\u00f2pia de seguretat \u00e9s una aposta perillosa.<\/p>\n<p>Per protegir realment els vostres entorns de producci\u00f3, heu d&#8217;adoptar una estrat\u00e8gia de defensa en profunditat:<br \/>\n1.  Habiliteu sumes de verificaci\u00f3 a nivell de p\u00e0gina dins del vostre motor de base de dades.<br \/>\n2.  Utilitzeu eines de verificaci\u00f3 natives (<code>pg_verifybackup<\/code>, <code>RESTORE VERIFYONLY<\/code>) immediatament despr\u00e9s de la creaci\u00f3 de la c\u00f2pia de seguretat.<br \/>\n3.  Monitoritzeu les metadades de la c\u00f2pia de seguretat (mida, durada) per detectar anomalies heur\u00edstiques.<br \/>\n4.  Implementeu proves de restauraci\u00f3 ef\u00edmeres i automatitzades com a part del vostre pipeline operatiu diari.<\/p>\n<p>En passar d&#8217;una mentalitat passiva de \u00abdisparar i oblidar\u00bb a un model actiu de \u00abvalidaci\u00f3 cont\u00ednua de la restauraci\u00f3\u00bb, us assegureu que quan el desastre arribi inevitablement, les vostres dades estiguin preparades, siguin fiables i totalment recuperables.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>** Discover how DevOps engineers and DBAs can detect corrupted database backups before disaster strikes. Learn advanced techniques for PostgreSQL, SQL Server, and MySQL, including automated restore testing and checksum validation.<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"rank_math_title":"Detect Corrupted Database Backups Before Disaster","rank_math_description":"** Discover how DevOps engineers and DBAs can detect corrupted database backups before disaster strikes. Learn advanced techniques for PostgreSQL, SQL Server, and MySQL, including automated restore testing and checksum validation.","rank_math_focus_keyword":"corrupted database backups","footnotes":""},"categories":[351],"tags":[3306,3307,3308,352,864,2101,3309],"class_list":["post-4661","post","type-post","status-publish","format-standard","hentry","category-database-backup","tag-backup-testing","tag-corrupted-backups","tag-data-integrity","tag-data-loss-prevention","tag-database-administration","tag-devops","tag-restore-testing"],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v27.7 (Yoast SEO v27.7) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>Detect Corrupted Database Backups Before Disaster<\/title>\n<meta name=\"description\" content=\"** Discover how DevOps engineers and DBAs can detect corrupted database backups before disaster strikes. Learn advanced techniques for PostgreSQL, SQL Server, and MySQL, including automated restore testing and checksum validation.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/cloudsave.app\/ca\/knowledge-base\/l-assass%c3%ad-silenci%c3%b3s-com-detectar-c%c3%b2pies-de-seguretat-de-bases-de-dades-corruptes-abans-que-es-produeixi-un-desastre\/\" \/>\n<meta property=\"og:locale\" content=\"ca_ES\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"L&#039;assass\u00ed silenci\u00f3s: Com detectar c\u00f2pies de seguretat de bases de dades corruptes abans que es produeixi un desastre\" \/>\n<meta property=\"og:description\" content=\"** Discover how DevOps engineers and DBAs can detect corrupted database backups before disaster strikes. Learn advanced techniques for PostgreSQL, SQL Server, and MySQL, including automated restore testing and checksum validation.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/cloudsave.app\/ca\/knowledge-base\/l-assass%c3%ad-silenci%c3%b3s-com-detectar-c%c3%b2pies-de-seguretat-de-bases-de-dades-corruptes-abans-que-es-produeixi-un-desastre\/\" \/>\n<meta property=\"og:site_name\" content=\"CloudSave\" \/>\n<meta property=\"article:published_time\" content=\"2026-06-14T19:31:06+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2026-06-14T19:44:42+00:00\" \/>\n<meta name=\"author\" content=\"shervinrv\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Escrit per\" \/>\n\t<meta name=\"twitter:data1\" content=\"shervinrv\" \/>\n\t<meta name=\"twitter:label2\" content=\"Temps estimat de lectura\" \/>\n\t<meta name=\"twitter:data2\" content=\"11 minuts\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/cloudsave.app\\\/ca\\\/knowledge-base\\\/l-assass%c3%ad-silenci%c3%b3s-com-detectar-c%c3%b2pies-de-seguretat-de-bases-de-dades-corruptes-abans-que-es-produeixi-un-desastre\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/cloudsave.app\\\/ca\\\/knowledge-base\\\/l-assass%c3%ad-silenci%c3%b3s-com-detectar-c%c3%b2pies-de-seguretat-de-bases-de-dades-corruptes-abans-que-es-produeixi-un-desastre\\\/\"},\"author\":{\"name\":\"shervinrv\",\"@id\":\"https:\\\/\\\/cloudsave.app\\\/ca\\\/#\\\/schema\\\/person\\\/286beefe68281d868e87f46603a7ae4d\"},\"headline\":\"L&#8217;assass\u00ed silenci\u00f3s: Com detectar c\u00f2pies de seguretat de bases de dades corruptes abans que es produeixi un desastre\",\"datePublished\":\"2026-06-14T19:31:06+00:00\",\"dateModified\":\"2026-06-14T19:44:42+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/cloudsave.app\\\/ca\\\/knowledge-base\\\/l-assass%c3%ad-silenci%c3%b3s-com-detectar-c%c3%b2pies-de-seguretat-de-bases-de-dades-corruptes-abans-que-es-produeixi-un-desastre\\\/\"},\"wordCount\":1769,\"publisher\":{\"@id\":\"https:\\\/\\\/cloudsave.app\\\/ca\\\/#\\\/schema\\\/person\\\/286beefe68281d868e87f46603a7ae4d\"},\"keywords\":[\"backup testing\",\"corrupted backups\",\"data integrity\",\"data loss prevention\",\"Database Administration\",\"devops\",\"restore testing\"],\"articleSection\":[\"Database Backup\"],\"inLanguage\":\"ca\"},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/cloudsave.app\\\/ca\\\/knowledge-base\\\/l-assass%c3%ad-silenci%c3%b3s-com-detectar-c%c3%b2pies-de-seguretat-de-bases-de-dades-corruptes-abans-que-es-produeixi-un-desastre\\\/\",\"url\":\"https:\\\/\\\/cloudsave.app\\\/ca\\\/knowledge-base\\\/l-assass%c3%ad-silenci%c3%b3s-com-detectar-c%c3%b2pies-de-seguretat-de-bases-de-dades-corruptes-abans-que-es-produeixi-un-desastre\\\/\",\"name\":\"Detect Corrupted Database Backups Before Disaster\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/cloudsave.app\\\/ca\\\/#website\"},\"datePublished\":\"2026-06-14T19:31:06+00:00\",\"dateModified\":\"2026-06-14T19:44:42+00:00\",\"description\":\"** Discover how DevOps engineers and DBAs can detect corrupted database backups before disaster strikes. Learn advanced techniques for PostgreSQL, SQL Server, and MySQL, including automated restore testing and checksum validation.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/cloudsave.app\\\/ca\\\/knowledge-base\\\/l-assass%c3%ad-silenci%c3%b3s-com-detectar-c%c3%b2pies-de-seguretat-de-bases-de-dades-corruptes-abans-que-es-produeixi-un-desastre\\\/#breadcrumb\"},\"inLanguage\":\"ca\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/cloudsave.app\\\/ca\\\/knowledge-base\\\/l-assass%c3%ad-silenci%c3%b3s-com-detectar-c%c3%b2pies-de-seguretat-de-bases-de-dades-corruptes-abans-que-es-produeixi-un-desastre\\\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/cloudsave.app\\\/ca\\\/knowledge-base\\\/l-assass%c3%ad-silenci%c3%b3s-com-detectar-c%c3%b2pies-de-seguretat-de-bases-de-dades-corruptes-abans-que-es-produeixi-un-desastre\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/cloudsave.app\\\/ca\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"L&#8217;assass\u00ed silenci\u00f3s: Com detectar c\u00f2pies de seguretat de bases de dades corruptes abans que es produeixi un desastre\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/cloudsave.app\\\/ca\\\/#website\",\"url\":\"https:\\\/\\\/cloudsave.app\\\/ca\\\/\",\"name\":\"CloudSave\",\"description\":\"CloudSave\",\"publisher\":{\"@id\":\"https:\\\/\\\/cloudsave.app\\\/ca\\\/#\\\/schema\\\/person\\\/286beefe68281d868e87f46603a7ae4d\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/cloudsave.app\\\/ca\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"ca\"},{\"@type\":[\"Person\",\"Organization\"],\"@id\":\"https:\\\/\\\/cloudsave.app\\\/ca\\\/#\\\/schema\\\/person\\\/286beefe68281d868e87f46603a7ae4d\",\"name\":\"shervinrv\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"ca\",\"@id\":\"https:\\\/\\\/cloudsave.app\\\/wp-content\\\/uploads\\\/2026\\\/02\\\/Logo_Name-2.png\",\"url\":\"https:\\\/\\\/cloudsave.app\\\/wp-content\\\/uploads\\\/2026\\\/02\\\/Logo_Name-2.png\",\"contentUrl\":\"https:\\\/\\\/cloudsave.app\\\/wp-content\\\/uploads\\\/2026\\\/02\\\/Logo_Name-2.png\",\"width\":859,\"height\":150,\"caption\":\"shervinrv\"},\"logo\":{\"@id\":\"https:\\\/\\\/cloudsave.app\\\/wp-content\\\/uploads\\\/2026\\\/02\\\/Logo_Name-2.png\"},\"sameAs\":[\"http:\\\/\\\/cloudsave.app\"],\"url\":\"https:\\\/\\\/cloudsave.app\\\/ca\\\/knowledge-base\\\/author\\\/shervinrv\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Detect Corrupted Database Backups Before Disaster","description":"** Discover how DevOps engineers and DBAs can detect corrupted database backups before disaster strikes. Learn advanced techniques for PostgreSQL, SQL Server, and MySQL, including automated restore testing and checksum validation.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/cloudsave.app\/ca\/knowledge-base\/l-assass%c3%ad-silenci%c3%b3s-com-detectar-c%c3%b2pies-de-seguretat-de-bases-de-dades-corruptes-abans-que-es-produeixi-un-desastre\/","og_locale":"ca_ES","og_type":"article","og_title":"L'assass\u00ed silenci\u00f3s: Com detectar c\u00f2pies de seguretat de bases de dades corruptes abans que es produeixi un desastre","og_description":"** Discover how DevOps engineers and DBAs can detect corrupted database backups before disaster strikes. Learn advanced techniques for PostgreSQL, SQL Server, and MySQL, including automated restore testing and checksum validation.","og_url":"https:\/\/cloudsave.app\/ca\/knowledge-base\/l-assass%c3%ad-silenci%c3%b3s-com-detectar-c%c3%b2pies-de-seguretat-de-bases-de-dades-corruptes-abans-que-es-produeixi-un-desastre\/","og_site_name":"CloudSave","article_published_time":"2026-06-14T19:31:06+00:00","article_modified_time":"2026-06-14T19:44:42+00:00","author":"shervinrv","twitter_card":"summary_large_image","twitter_misc":{"Escrit per":"shervinrv","Temps estimat de lectura":"11 minuts"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/cloudsave.app\/ca\/knowledge-base\/l-assass%c3%ad-silenci%c3%b3s-com-detectar-c%c3%b2pies-de-seguretat-de-bases-de-dades-corruptes-abans-que-es-produeixi-un-desastre\/#article","isPartOf":{"@id":"https:\/\/cloudsave.app\/ca\/knowledge-base\/l-assass%c3%ad-silenci%c3%b3s-com-detectar-c%c3%b2pies-de-seguretat-de-bases-de-dades-corruptes-abans-que-es-produeixi-un-desastre\/"},"author":{"name":"shervinrv","@id":"https:\/\/cloudsave.app\/ca\/#\/schema\/person\/286beefe68281d868e87f46603a7ae4d"},"headline":"L&#8217;assass\u00ed silenci\u00f3s: Com detectar c\u00f2pies de seguretat de bases de dades corruptes abans que es produeixi un desastre","datePublished":"2026-06-14T19:31:06+00:00","dateModified":"2026-06-14T19:44:42+00:00","mainEntityOfPage":{"@id":"https:\/\/cloudsave.app\/ca\/knowledge-base\/l-assass%c3%ad-silenci%c3%b3s-com-detectar-c%c3%b2pies-de-seguretat-de-bases-de-dades-corruptes-abans-que-es-produeixi-un-desastre\/"},"wordCount":1769,"publisher":{"@id":"https:\/\/cloudsave.app\/ca\/#\/schema\/person\/286beefe68281d868e87f46603a7ae4d"},"keywords":["backup testing","corrupted backups","data integrity","data loss prevention","Database Administration","devops","restore testing"],"articleSection":["Database Backup"],"inLanguage":"ca"},{"@type":"WebPage","@id":"https:\/\/cloudsave.app\/ca\/knowledge-base\/l-assass%c3%ad-silenci%c3%b3s-com-detectar-c%c3%b2pies-de-seguretat-de-bases-de-dades-corruptes-abans-que-es-produeixi-un-desastre\/","url":"https:\/\/cloudsave.app\/ca\/knowledge-base\/l-assass%c3%ad-silenci%c3%b3s-com-detectar-c%c3%b2pies-de-seguretat-de-bases-de-dades-corruptes-abans-que-es-produeixi-un-desastre\/","name":"Detect Corrupted Database Backups Before Disaster","isPartOf":{"@id":"https:\/\/cloudsave.app\/ca\/#website"},"datePublished":"2026-06-14T19:31:06+00:00","dateModified":"2026-06-14T19:44:42+00:00","description":"** Discover how DevOps engineers and DBAs can detect corrupted database backups before disaster strikes. Learn advanced techniques for PostgreSQL, SQL Server, and MySQL, including automated restore testing and checksum validation.","breadcrumb":{"@id":"https:\/\/cloudsave.app\/ca\/knowledge-base\/l-assass%c3%ad-silenci%c3%b3s-com-detectar-c%c3%b2pies-de-seguretat-de-bases-de-dades-corruptes-abans-que-es-produeixi-un-desastre\/#breadcrumb"},"inLanguage":"ca","potentialAction":[{"@type":"ReadAction","target":["https:\/\/cloudsave.app\/ca\/knowledge-base\/l-assass%c3%ad-silenci%c3%b3s-com-detectar-c%c3%b2pies-de-seguretat-de-bases-de-dades-corruptes-abans-que-es-produeixi-un-desastre\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/cloudsave.app\/ca\/knowledge-base\/l-assass%c3%ad-silenci%c3%b3s-com-detectar-c%c3%b2pies-de-seguretat-de-bases-de-dades-corruptes-abans-que-es-produeixi-un-desastre\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/cloudsave.app\/ca\/"},{"@type":"ListItem","position":2,"name":"L&#8217;assass\u00ed silenci\u00f3s: Com detectar c\u00f2pies de seguretat de bases de dades corruptes abans que es produeixi un desastre"}]},{"@type":"WebSite","@id":"https:\/\/cloudsave.app\/ca\/#website","url":"https:\/\/cloudsave.app\/ca\/","name":"CloudSave","description":"CloudSave","publisher":{"@id":"https:\/\/cloudsave.app\/ca\/#\/schema\/person\/286beefe68281d868e87f46603a7ae4d"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/cloudsave.app\/ca\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"ca"},{"@type":["Person","Organization"],"@id":"https:\/\/cloudsave.app\/ca\/#\/schema\/person\/286beefe68281d868e87f46603a7ae4d","name":"shervinrv","image":{"@type":"ImageObject","inLanguage":"ca","@id":"https:\/\/cloudsave.app\/wp-content\/uploads\/2026\/02\/Logo_Name-2.png","url":"https:\/\/cloudsave.app\/wp-content\/uploads\/2026\/02\/Logo_Name-2.png","contentUrl":"https:\/\/cloudsave.app\/wp-content\/uploads\/2026\/02\/Logo_Name-2.png","width":859,"height":150,"caption":"shervinrv"},"logo":{"@id":"https:\/\/cloudsave.app\/wp-content\/uploads\/2026\/02\/Logo_Name-2.png"},"sameAs":["http:\/\/cloudsave.app"],"url":"https:\/\/cloudsave.app\/ca\/knowledge-base\/author\/shervinrv\/"}]}},"_links":{"self":[{"href":"https:\/\/cloudsave.app\/ca\/wp-json\/wp\/v2\/posts\/4661","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/cloudsave.app\/ca\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/cloudsave.app\/ca\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/cloudsave.app\/ca\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/cloudsave.app\/ca\/wp-json\/wp\/v2\/comments?post=4661"}],"version-history":[{"count":2,"href":"https:\/\/cloudsave.app\/ca\/wp-json\/wp\/v2\/posts\/4661\/revisions"}],"predecessor-version":[{"id":5448,"href":"https:\/\/cloudsave.app\/ca\/wp-json\/wp\/v2\/posts\/4661\/revisions\/5448"}],"wp:attachment":[{"href":"https:\/\/cloudsave.app\/ca\/wp-json\/wp\/v2\/media?parent=4661"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/cloudsave.app\/ca\/wp-json\/wp\/v2\/categories?post=4661"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/cloudsave.app\/ca\/wp-json\/wp\/v2\/tags?post=4661"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}