{"id":162229,"date":"2024-10-11T17:06:13","date_gmt":"2024-10-11T15:06:13","guid":{"rendered":"https:\/\/hifivem.com\/?p=162229"},"modified":"2026-08-09T12:55:27","modified_gmt":"2026-08-09T10:55:27","slug":"como-hacer-una-copia-de-seguridad-de-su-servidor-fivem","status":"publish","type":"post","link":"https:\/\/rpcrate.com\/es\/how-to-backup-your-fivem-server\/","title":{"rendered":"C\u00f3mo hacer copias de seguridad y restaurar un servidor FiveM"},"content":{"rendered":"<p>Una copia de seguridad recuperable de FiveM empareja la base de datos con los recursos y la configuraci\u00f3n coincidentes. Demu\u00e9stralo restaurando ese par en un servidor aislado y verificando el estado del jugador despu\u00e9s de un reinicio.<\/p>\n<h2 id=\"define-one-recovery-point\">Define un punto de recuperaci\u00f3n<\/h2>\n<p>Incluye server-data, server.cfg, permisos, perfiles de txAdmin requeridos, recursos personalizados y registros de versiones. Anota las versiones de artefactos y frameworks, y las dependencias externas. Guarda los secretos en copias de seguridad privadas, nunca en repositorios p\u00fablicos.<\/p>\n<p>Para un par consistente, programa el mantenimiento y det\u00e9n FXServer y otros escritores de aplicaciones antes del volcado final de la base de datos y la copia de archivos. No ejecutes cambios de esquema durante el volcado. Los ejemplos a continuaci\u00f3n usan MariaDB; las instalaciones de MySQL deben usar sus herramientas y opciones de proveedor coincidentes.<\/p>\n<h2 id=\"prepare-database-authentication\">Prepara la autenticaci\u00f3n de la base de datos<\/h2>\n<p>Usa una cuenta de respaldo dedicada con los privilegios requeridos por las caracter\u00edsticas de tu base de datos. Almacena sus detalles de conexi\u00f3n en un archivo de opciones privado de MariaDB legible solo por la cuenta de respaldo. Mantenlo fuera de la ra\u00edz web y del repositorio.<\/p>\n<p>El <a href=\"https:\/\/mariadb.com\/docs\/server\/clients-and-utilities\/backup-restore-and-import-clients\/mariadb-dump\">manual de mariadb-dump<\/a> explica la autenticaci\u00f3n y los l\u00edmites de las instant\u00e1neas consistentes. --single-transaction proporciona una instant\u00e1nea consistente para tablas transaccionales; no hace que las tablas no transaccionales sean consistentes.<\/p>\n<h2 id=\"linux-example\">Ejemplo de Linux<\/h2>\n<p>Ejecuta esto como el usuario de respaldo autorizado despu\u00e9s de coordinar las escrituras. Reemplaza el nombre de la base de datos y las rutas con tu instalaci\u00f3n real. El archivo de opciones privado ya debe existir:<\/p>\n<pre data-no-translation=\"\" translate=\"no\"><code data-no-translation=\"\" translate=\"no\">#!\/usr\/bin\/env bash\nset -euo pipefail\numask 077\nstamp=$(date -u +%Y%m%dT%H%M%SZ)\ndest=\"\/srv\/backups\/fivem\/$stamp\"\ninstall -d -m 0700 \"$dest\"\nmariadb-dump --defaults-extra-file=\/etc\/fivem\/backup.cnf \\\n  --single-transaction --routines --events --triggers \\\n  --databases fivem --result-file=\"$dest\/database.sql\"\ntest -s \"$dest\/database.sql\"\ntar -C \/srv\/fivem -czf \"$dest\/server-data.tar.gz\" server-data\ntar -tzf \"$dest\/server-data.tar.gz\" &gt; \/dev\/null\nsha256sum \"$dest\/database.sql\" \"$dest\/server-data.tar.gz\" &gt; \"$dest\/SHA256SUMS\"<\/code><\/pre>\n<p>A\u00f1ade cualquier ruta de txAdmin\/configuraci\u00f3n requerida fuera de server-data a tu conjunto de copias de seguridad. Prueba el comando con la misma cuenta y entorno utilizados por cron o un temporizador de systemd. Alerta si el estado de salida no es cero.<\/p>\n<h2 id=\"windows-powershell-example\">Ejemplo de Windows PowerShell<\/h2>\n<p>Usa la ruta real a mariadb-dump.exe y un archivo de opciones privado. --result-file evita los cambios de codificaci\u00f3n de texto del shell en el volcado:<\/p>\n<pre data-no-translation=\"\" translate=\"no\"><code data-no-translation=\"\" translate=\"no\">$ErrorActionPreference = \"Stop\"\n$Stamp = (Get-Date).ToUniversalTime().ToString(\"yyyyMMddTHHmmssZ\")\n$Destination = \"D:\\FiveM-Backups\\$Stamp\"\nNew-Item -ItemType Directory -Path $Destination | Out-Null\n&amp; \"C:\\MariaDB\\bin\\mariadb-dump.exe\" `\n  \"--defaults-extra-file=D:\\FiveM-Private\\backup.cnf\" `\n  --single-transaction --routines --events --triggers `\n  --databases fivem \"--result-file=$Destination\\database.sql\"\nif ($LASTEXITCODE -ne 0) { throw \"Database dump failed\" }\nif ((Get-Item \"$Destination\\database.sql\").Length -eq 0) { throw \"Empty dump\" }\nCopy-Item \"D:\\FXServer\\server-data\" \"$Destination\\server-data\" -Recurse\nGet-FileHash \"$Destination\\database.sql\" | Format-List<\/code><\/pre>\n<p>Restringe los permisos de Windows del directorio de copia de seguridad a los administradores de copia de seguridad y recuperaci\u00f3n. En el Programador de tareas, usa rutas ejecutables expl\u00edcitas y una cuenta dedicada; verifica su historial y las alertas de fallos.<\/p>\n<h2 id=\"restore-on-an-isolated-server\">Restaurar en un servidor aislado<\/h2>\n<ol>\n<li>Elige una generaci\u00f3n de copia de seguridad completa y verifica sus sumas de comprobaci\u00f3n o la integridad del archivo. Nunca combines una base de datos m\u00e1s nueva con recursos arbitrarios m\u00e1s antiguos.<\/li>\n<li>Extrae los archivos en una ubicaci\u00f3n de prueba separada. Prepara un servicio de base de datos aislado y restaura database.sql con el cliente MariaDB correspondiente. El volcado contiene el nombre de la base de datos, as\u00ed que no lo importes al servicio en vivo.<\/li>\n<li>Establece credenciales y puntos finales solo para pruebas e inicia la combinaci\u00f3n de artefactos\/frameworks registrada. Evita que los recursos de prueba env\u00eden pagos reales, webhooks o notificaciones a los jugadores.<\/li>\n<li>\u00danete con un jugador de prueba. Verifica el personaje, el inventario, los trabajos, la vivienda y los permisos; vuelve a conectarte y reinicia, luego verifica de nuevo.<\/li>\n<li>Registra la duraci\u00f3n de la restauraci\u00f3n y cualquier dependencia faltante. Mant\u00e9n m\u00faltiples generaciones retenidas, una copia cifrada fuera del sitio y una cuenta de respaldo que no pueda borrar todas las generaciones remotas.<\/li>\n<\/ol>\n<p>Reanuda las escrituras normales solo despu\u00e9s de que el conjunto de copias de seguridad est\u00e9 completo. Un trabajo programado exitoso es una evidencia \u00fatil; una restauraci\u00f3n exitosa es la verificaci\u00f3n que hace que la copia de seguridad sea confiable.<\/p>","protected":false},"excerpt":{"rendered":"<p>Una copia de seguridad recuperable de FiveM empareja la base de datos con los recursos y la configuraci\u00f3n coincidentes. Demu\u00e9stralo restaurando ese par en un servidor aislado y verificando el estado del jugador despu\u00e9s de un reinicio.<\/p>","protected":false},"author":1,"featured_media":185837,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1899],"tags":[],"class_list":["post-162229","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-tutorials"],"_links":{"self":[{"href":"https:\/\/rpcrate.com\/es\/wp-json\/wp\/v2\/posts\/162229","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/rpcrate.com\/es\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/rpcrate.com\/es\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/rpcrate.com\/es\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/rpcrate.com\/es\/wp-json\/wp\/v2\/comments?post=162229"}],"version-history":[{"count":5,"href":"https:\/\/rpcrate.com\/es\/wp-json\/wp\/v2\/posts\/162229\/revisions"}],"predecessor-version":[{"id":213901,"href":"https:\/\/rpcrate.com\/es\/wp-json\/wp\/v2\/posts\/162229\/revisions\/213901"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/rpcrate.com\/es\/wp-json\/wp\/v2\/media\/185837"}],"wp:attachment":[{"href":"https:\/\/rpcrate.com\/es\/wp-json\/wp\/v2\/media?parent=162229"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/rpcrate.com\/es\/wp-json\/wp\/v2\/categories?post=162229"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/rpcrate.com\/es\/wp-json\/wp\/v2\/tags?post=162229"}],"curies":[{"name":"gracias","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}