Grande parte dos servidores FiveM usa banco de dados para salvar personagens, dinheiro, inventário, veículos, casas, empregos, punições, logs e configurações de scripts. Frameworks como ESX, QBCore e VRP dependem de MySQL ou MariaDB para funcionar corretamente. Em uma VPS, configurar o banco com cuidado é essencial para evitar perda de dados, travamentos, login lento e erros no console.
MySQL ou MariaDB: qual escolher
MySQL e MariaDB são opções populares e compatíveis com muitos scripts. MariaDB costuma ser leve e muito usado em servidores de jogos. MySQL também é sólido e amplamente documentado. A escolha depende do seu pacote de scripts e da experiência da equipe. O mais importante é usar uma versão estável, manter backup e evitar configurações improvisadas em produção.
Onde instalar o banco
Para cidades pequenas e médias, é comum instalar o banco na mesma VPS do FiveM. Isso reduz latência entre servidor e database, mas divide CPU, RAM e disco. Para cidades maiores, pode valer separar banco em outra VPS ou servidor dedicado, especialmente quando há muitos logs, inventários complexos e consultas frequentes. Se o banco ficar externo, libere acesso apenas para o IP do servidor FiveM, nunca para o mundo todo.
Criando database e usuário
Evite usar usuário root do banco dentro dos scripts. Crie um database específico e um usuário com permissões apenas nesse database. Isso limita danos caso algum script vaze credenciais. Use senha forte, sem repetir senhas de painel, Discord ou VPS. Em equipe, poucas pessoas devem ter acesso direto ao banco.
CREATE DATABASE fivem;
CREATE USER 'fivem_user'@'localhost' IDENTIFIED BY 'senha_forte';
GRANT ALL PRIVILEGES ON fivem.* TO 'fivem_user'@'localhost';
FLUSH PRIVILEGES;Se o banco estiver em outra máquina, substitua localhost pelo IP permitido. Não use curinga sem necessidade. Banco exposto publicamente é um dos maiores riscos para uma cidade.
Configurando conexão no server.cfg
Resources modernos costumam usar oxmysql. A string de conexão informa usuário, senha, host e database. Um exemplo comum é:
set mysql_connection_string "mysql://fivem_user:senha_forte@localhost/fivem?charset=utf8mb4"
ensure oxmysqlUse utf8mb4 para lidar melhor com caracteres especiais. Evite acentos e símbolos estranhos em nomes de tabelas, mas permita que jogadores usem nomes e textos comuns sem quebrar codificação.
Importando arquivos SQL
Scripts de framework e resources geralmente vêm com arquivos .sql. Importe esses arquivos antes de iniciar o servidor. Leia se o SQL cria tabelas novas, altera tabelas existentes ou insere dados padrão. Importar SQL duplicado pode gerar erro ou sobrescrever informações. Em produção, faça backup antes de rodar qualquer alteração de tabela.
Performance do banco
Quando o servidor cresce, consultas ruins podem causar lag. Inventários, garagens e logs são áreas sensíveis. Monitore uso de CPU, memória, tamanho de tabelas e queries lentas. Limpe logs antigos de forma controlada, crie índices quando recomendado por desenvolvedor confiável e evite scripts que salvam dados em loop desnecessário. NVMe ajuda bastante, mas não corrige script mal programado.
Backup do banco
Backup de arquivos não substitui backup do banco. Personagens, dinheiro e veículos normalmente ficam no database. Faça dumps agendados e teste restauração. Um backup que nunca foi restaurado é apenas uma esperança. Guarde cópias fora da VPS principal para proteger contra falha de disco, erro humano ou ataque.
Problemas comuns
- Senha com caractere especial quebrando string de conexão.
- Banco criado com nome diferente do configurado.
- Usuário sem permissão nas tabelas.
- SQL importado no database errado.
oxmysqliniciado depois do framework.- Banco remoto liberado para qualquer IP.
- Falta de backup antes de update de script.
Conclusão
O banco de dados é o coração da cidade FiveM. Se ele falha, jogadores perdem progresso, personagens não carregam e sistemas param. Em VPS, configure database com usuário próprio, conexão segura, ordem correta no server.cfg, backups agendados e monitoramento. Uma cidade estável não depende apenas de CPU forte; depende também de dados bem protegidos e consultas saudáveis.