Pular para o conteúdo

Migrações da base de dados

Nunca importas SQL à mão. O bs_core cria e atualiza o schema sozinho no arranque.

  • Os ficheiros de migração estão em bs_core/sql/, numerados (001_core_schema.sql até 035_faction_jobs.sql neste momento).
  • No arranque, o bs_core corre por ordem todos os ficheiros da sua lista que ainda não estão registados e regista-os na tabela bs_migrations com um checksum. Um ficheiro nunca corre duas vezes.
  • A consola imprime o que aplicou nesse arranque.
  • Alguns resources criam as suas próprias tabelas pequenas com CREATE TABLE IF NOT EXISTS no arranque (por exemplo bs_tester e bs_config). Também não há nada a fazer nesses.
FicheiroAcrescenta
029_vehicle_world.sqlVeículos de mundo, peças em falta
030_user_language.sqlbs_users.language
031_building.sqlbs_build_pieces, bs_build_bases, move as estruturas antigas para fações
032_crafting.sqlFilas de estações, armadilhas, reembolsos offline, pontos de recycler
033_medical.sqlbs_character_medical: ferimentos, infeção, doença, sangue
034_base_flags.sqlBandeiras de zona segura e de posto avançado, raids declarados
035_faction_jobs.sqlMembros de trabalhos, o quadro, pontuações, escolhas de trabalho, trabalho de garagem
045_darkzone.sqlDark Zone (1.1.0)
046_building_v2.sqlConstrução v2: energia, geradores, bandeiras (1.1.0)
047_faction_emblems.sqlEmblemas de fação (1.1.0)
048_backpack_refresh.sqlItens de mochila renomeados, conteúdo mantido (1.1.0)
  1. Cria o número seguinte: bs_core/sql/036_my_change.sql.
  2. Escreve-a de forma a ser segura numa base de dados que já tem dados. Acrescenta colunas com valores por defeito, não removas coisas que as pessoas ainda usam.
  3. Acrescenta o nome do ficheiro à lista em bs_core/server/sv_migrations.lua (M.files). A lista está fixa no código. Um ficheiro que não esteja lá nunca corre, sem avisar.
  4. Reinicia o servidor (reiniciar só o bs_core expulsa toda a gente).

Antes de uma atualização que traga migrações, faz backup. No Windows:

Terminal window
powershell -ExecutionPolicy Bypass -File .\tools\Backup-Database.ps1

Ver Atualizar e base de dados para restaurar e mover personagens entre servidores.