{"id":199542,"date":"2025-10-02T15:33:52","date_gmt":"2025-10-02T13:33:52","guid":{"rendered":"https:\/\/fivemx.com\/?p=199542"},"modified":"2026-08-15T19:30:00","modified_gmt":"2026-08-15T17:30:00","slug":"como-migrar-esx-a-qbcore","status":"publish","type":"post","link":"https:\/\/hifivem.com\/es\/como-migrar-esx-a-qbcore\/","title":{"rendered":"C\u00f3mo Migrar ESX \u2192 QBCore de la Manera Correcta"},"content":{"rendered":"<p><strong>Respuesta directa:<\/strong> Migrar ESX a QBCore es una reescritura controlada y una migraci\u00f3n de datos, no un cambio de framework. Cree un servidor de staging QBCore limpio, inventar\u00ede cada dependencia ESX, defina un mapeo de datos expl\u00edcito campo por campo, porte recursos contra APIs actuales, ensaye la reversi\u00f3n y realice el cambio solo despu\u00e9s de que las verificaciones referenciales y de jugabilidad sean exitosas.<\/p>\n<p class=\"fivemx-guide-meta\"><strong>Publicado:<\/strong> 2 de octubre de 2025 \u00b7 <strong>Actualizado:<\/strong> 15 de agosto de 2026 \u00b7 <strong>Por:<\/strong> <a href=\"\/es\/acerca-de\/\">Luke<\/a><\/p>\n<h2>Qu\u00e9 debe mapearse<\/h2>\n<table>\n<thead>\n<tr>\n<th>Superficie<\/th>\n<th>Decisi\u00f3n de migraci\u00f3n<\/th>\n<th>Evidencia de aceptaci\u00f3n<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<th>Identidad del jugador<\/th>\n<td>Mapear identificadores y personajes heredados a IDs de ciudadano QBCore sin colisiones.<\/td>\n<td>Cada jugador muestreado se resuelve en un registro de personaje previsto.<\/td>\n<\/tr>\n<tr>\n<th>Dinero y cuentas<\/th>\n<td>Mapea cada cuenta expl\u00edcitamente; no asumas nombres o sem\u00e1nticas iguales.<\/td>\n<td>Los totales pre\/post se concilian para una muestra congelada.<\/td>\n<\/tr>\n<tr>\n<th>Trabajos y rangos<\/th>\n<td>Define un mapeo para cada trabajo y rango activo, incluyendo las opciones por defecto para desempleados.<\/td>\n<td>Los flujos de permisos y pagos coinciden con el mapa aprobado.<\/td>\n<\/tr>\n<tr>\n<th>Objetos e inventario<\/th>\n<td>Mapea nombres, metadatos, peso, ranuras y propiedad del almacenamiento.<\/td>\n<td>No hay nombres de objetos hu\u00e9rfanos; los inventarios persisten despu\u00e9s de reconectarse.<\/td>\n<\/tr>\n<tr>\n<th>Veh\u00edculos y propiedades<\/th>\n<td>Normalizar claves de propiedad, matr\u00edculas, garajes y campos de estado.<\/td>\n<td>Los registros de propiedad siguen siendo \u00fanicos y accesibles.<\/td>\n<\/tr>\n<tr>\n<th>Recursos personalizados<\/th>\n<td>Reemplace las ESX devoluciones de llamada, eventos y API de jugadores con equivalentes QBCore documentados.<\/td>\n<td>Cada flujo de recursos de extremo a extremo pasa por staging.<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h2>Secuencia de migraci\u00f3n<\/h2>\n<ol>\n<li>Congela los cambios de esquema y recursos; realiza una copia de seguridad restaurable de la base de datos y de los archivos.<\/li>\n<li>Crea QBCore a partir de su receta o repositorio mantenido en un entorno de ensayo aislado.<\/li>\n<li>Exporta un inventario de esquemas y escribe un mapeo versionado para identidades, cuentas, trabajos, \u00edtems, veh\u00edculos y tablas personalizadas.<\/li>\n<li>Haga que las transformaciones sean idempotentes y ejec\u00fatelas solo contra una copia de base de datos desechable.<\/li>\n<li>Importa los recursos uno a la vez usando la documentaci\u00f3n actual de QBCore; no conf\u00edes en el reemplazo ciego de nombres de eventos.<\/li>\n<li>Reconcilia los recuentos de filas, la unicidad, las sumas y las referencias hu\u00e9rfanas, luego ejecuta las pruebas de juego, reconecta y reinicia.<\/li>\n<li>Ensaya el rollback. Durante el corte, det\u00e9n las escrituras, haz una copia de seguridad final, vuelve a ejecutar el proceso probado y verifica antes de reabrir las uniones.<\/li>\n<\/ol>\n<h2>No copies una plantilla gen\u00e9rica de SQL<\/h2>\n<p>Los esquemas de ESX y QBCore var\u00edan seg\u00fan la versi\u00f3n, la receta, el inventario y los recursos personalizados. Una sentencia gen\u00e9rica CREATE TABLE o INSERT puede descartar silenciosamente metadatos o crear valores predeterminados inv\u00e1lidos. Deriva el SQL de migraci\u00f3n de los dos esquemas realmente instalados, revisa las restricciones y preserva un mapa de identidad de legado a nuevo para soporte y auditor\u00eda.<\/p>\n<h2>Alcance y limitaciones<\/h2>\n<p>Este es un plan de control de migraci\u00f3n, no ejecutable SQL para un servidor desconocido. No estima horas ni promete una conversi\u00f3n sin p\u00e9rdidas. Los recursos cifrados o en dep\u00f3sito fiduciario pueden no ser port\u00e1tiles. Verifique las licencias, los frameworks actuales APIs y los derechos de migraci\u00f3n de cada paquete antes de que comience el trabajo.<\/p>\n<h2 id=\"fivemx-primary-sources\">Fuentes primarias<\/h2>\n<ul>\n<li><a href=\"https:\/\/docs.fivem.net\/docs\/server-manual\/frameworks\/\" target=\"_blank\" rel=\"noopener\">Cfx.re: Frameworks<\/a><\/li>\n<li><a href=\"https:\/\/github.com\/esx-framework\/esx_core\" target=\"_blank\" rel=\"noopener\">ESX: repositorio oficial de esx_core<\/a><\/li>\n<li><a href=\"https:\/\/github.com\/qbcore-framework\/qb-core\" target=\"_blank\" rel=\"noopener\">QBCore: repositorio oficial de qb-core<\/a><\/li>\n<li><a href=\"https:\/\/docs.qbox.re\/\" target=\"_blank\" rel=\"noopener\">Qbox: documentaci\u00f3n oficial<\/a><\/li>\n<\/ul>","protected":false},"excerpt":{"rendered":"<p>Un plan de migraci\u00f3n controlado de ESX a QBCore que cubre la identidad, el mapeo de datos, los puertos de recursos, la validaci\u00f3n y la reversi\u00f3n.<\/p>","protected":false},"author":1,"featured_media":199543,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[2882,1902,1899],"tags":[2858,2950,2859],"class_list":["post-199542","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-framework-conversion","category-fivem-related","category-tutorials","tag-esx","tag-framework","tag-qbcore"],"_links":{"self":[{"href":"https:\/\/hifivem.com\/es\/wp-json\/wp\/v2\/posts\/199542","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/hifivem.com\/es\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/hifivem.com\/es\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/hifivem.com\/es\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/hifivem.com\/es\/wp-json\/wp\/v2\/comments?post=199542"}],"version-history":[{"count":5,"href":"https:\/\/hifivem.com\/es\/wp-json\/wp\/v2\/posts\/199542\/revisions"}],"predecessor-version":[{"id":214893,"href":"https:\/\/hifivem.com\/es\/wp-json\/wp\/v2\/posts\/199542\/revisions\/214893"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/hifivem.com\/es\/wp-json\/wp\/v2\/media\/199543"}],"wp:attachment":[{"href":"https:\/\/hifivem.com\/es\/wp-json\/wp\/v2\/media?parent=199542"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/hifivem.com\/es\/wp-json\/wp\/v2\/categories?post=199542"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/hifivem.com\/es\/wp-json\/wp\/v2\/tags?post=199542"}],"curies":[{"name":"gracias","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}