MariaDB

Data source: External MariaDBStandard Edition+

Introdução

O MariaDB pode ser integrado ao NocoBase como banco de dados externo. Após a integração, o NocoBase lê as tabelas, os campos e as views do MariaDB e os utiliza como tabelas de dados na fonte de dados externa.

Diferentemente do banco de dados principal, a estrutura real das tabelas do MariaDB externo continua sendo mantida pelo sistema de negócios original, pelo cliente de banco de dados ou por scripts de migração. O NocoBase é responsável por ler a estrutura, armazenar os metadados dos campos e configurar blocos de página, permissões, workflows e APIs.

Item de configuraçãoDescrição
Versões compatíveisMariaDB >= 10.3.
Versões comerciaisCompatível com as edições Standard, Professional e Enterprise.
Plugin correspondente@nocobase/plugin-data-source-external-mariadb.
Protocolo compatívelUtiliza o protocolo MySQL para a conexão; o mapeamento de campos segue, em geral, a lógica de compatibilidade do MySQL.

Cenários adequados para usar o MariaDB externo:

  • Integrar bancos de dados MariaDB de sistemas de negócios existentes, como ERP, MES, WMS e CRM
  • Criar uma interface de gerenciamento com o NocoBase sem migrar dados históricos
  • Controlar permissões, processar fluxos, corrigir dados ou exibir relatórios de tabelas existentes
  • Continuar mantendo a estrutura do banco de dados pelo DBA, por scripts de migração ou pelo sistema original
Atenção

O MariaDB externo não é o banco de dados do sistema NocoBase. O NocoBase não assume o controle do backup, da restauração, da migração ou das alterações na estrutura das tabelas.

Instalação do plugin

Este plugin é comercial. Para obter informações detalhadas sobre a ativação, consulte: Guia de ativação de plugins comerciais

Adicionar fonte de dados

Em 「Gerenciamento de fontes de dados」, clique em 「Add new」, selecione MariaDB e preencha as informações de conexão.

20260709204413

As configurações de conexão mais comuns são:

ConfiguraçãoDescrição
Data source nameNome de identificação da fonte de dados, usado para referenciá-la em blocos de página, permissões, workflows e APIs. Não pode ser alterado após a criação.
Data source display nameNome exibido para a fonte de dados na interface. Recomenda-se usar um nome compreensível para os usuários de negócio, como 「ERP MariaDB」 ou 「Banco de pedidos」.
Host / PortEndereço do host e porta do MariaDB. A porta padrão normalmente é 3306.
DatabaseNome do banco de dados MariaDB ao qual se conectar.
Username / PasswordNome de usuário e senha usados para conectar ao MariaDB. O NocoBase só pode ler os objetos aos quais essa conta tem acesso; não concede permissões nem lê objetos privados de outras contas.
Table prefixPrefixo dos nomes das tabelas. Após configurado, o NocoBase lê apenas as tabelas e views que correspondem a esse prefixo e gera, no NocoBase, nomes de tabelas sem o prefixo.
Collections / Add all collectionsControla o escopo da integração. Quando 「Add all collections」 está habilitado, o NocoBase integra todas as tabelas e views dentro do escopo atual; quando desabilitado, integra apenas os objetos selecionados em 「Collections」.
Enabled the data sourceDefine se esta fonte de dados está habilitada. Quando desabilitada, a configuração da fonte de dados é mantida, mas os blocos de página, as permissões, os workflows e as APIs não podem continuar lendo seus dados.
Dica

Se houver muitos objetos no MariaDB, restrinja primeiro o escopo usando Database, Table prefix e 「Collections」. Integre apenas as tabelas e views usadas pelo aplicativo atual; assim, a configuração posterior de permissões, a criação de páginas e a manutenção da sincronização serão mais simples.

Selecionar tabelas de dados

Depois de preencher as informações de conexão, você pode clicar em 「Load Collections」 para ler as tabelas e views disponíveis no MariaDB. Os resultados da leitura serão afetados pela conta de conexão, por Database, Table prefix e pela configuração de 「Collections」.

Por padrão, 「Add all collections」 fica habilitado, indicando que todas as tabelas e views dentro do escopo atual serão integradas. Se quiser integrar apenas alguns objetos, desabilite 「Add all collections」 e selecione na lista as tabelas ou views necessárias.

20260709204452

Atenção

Uma única fonte de dados externa pode integrar no máximo 500 tabelas ou views por vez. Se houver muitos objetos no MariaDB, recomenda-se restringir primeiro o escopo usando Database, Table prefix ou 「Collections」.

Sincronizar e configurar campos

A estrutura das tabelas do MariaDB externo é mantida no lado do banco de dados. O NocoBase não cria campos, altera tipos de campos nem exclui campos reais no MariaDB externo.

Quando a estrutura das tabelas no MariaDB for alterada, você pode executar 「Sync from database」 na fonte de dados para ler novamente os metadados das tabelas e dos campos. A sincronização atualiza no NocoBase as informações armazenadas sobre tabelas de dados, campos, chaves primárias, chaves únicas e mapeamento de tipos de campos, mas não exclui as tabelas ou os dados reais no MariaDB.

Após a sincronização dos campos, você pode configurar no NocoBase o título do campo, o tipo de campo (Field type) e o componente do campo (Field interface). Se precisar criar campos de relacionamento do NocoBase, os metadados do relacionamento também serão armazenados no NocoBase; nenhum campo de chave estrangeira real será adicionado automaticamente à tabela do MariaDB.

Mapeamento de tipos de campos

O NocoBase mapeia automaticamente os tipos de campos do MariaDB para o Field type e o Field interface apropriados. O mapeamento dos campos comuns do MariaDB é basicamente igual ao do MySQL, e você pode ajustar a forma de exibição da interface na configuração do campo.

Os mapeamentos comuns são:

Tipo de campo do MariaDBNocoBase Field typeField interface disponível
TINYINTSMALLINTMEDIUMINTintegerbooleansortInteger、Sort、Checkbox、Switch、Select、Radio group。
INTINTEGERintegerunixTimestampsortInteger、Sort、Unix timestamp、Select、Radio group。
BIGINTbigIntsnowflakeIdunixTimestampsortInteger、Sort、Unix timestamp、Created at、Updated at。
FLOATDOUBLEfloatNumber、Percent。
DECIMALdecimalNumber、Percent、Currency。
CHARVARCHARstringuuidnanoidencryptionInput、Email、Phone、Password、Color、Icon、Select、Radio group、UUID、Nano ID。
TINYTEXTTEXTMEDIUMTEXTLONGTEXTtextTextarea、Markdown、Vditor、Rich text、URL。
DATEdateOnlyDate。
TIMEtimeTime。
DATETIMEdatetimeNoTzdatetimeTzdateDate、Time、Created at、Updated at。
TIMESTAMPdatetimeTzdateDate、Time、Created at、Updated at。
YEARstringintegerInput、Integer、Date。
JSONjsonarrayJSON。
Atenção

Os tipos de campos do MariaDB que não são compatíveis serão exibidos separadamente na configuração dos campos. Para usar esse tipo de campo como um campo comum no NocoBase, é necessário desenvolver uma adaptação.

Chave primária e identificador único do registro

Recomenda-se que as tabelas de dados usadas para exibição e edição em blocos de página tenham uma chave primária ou um campo exclusivo. O NocoBase prioriza a chave primária como identificador único do registro.

Se a integração for de uma view, de uma tabela sem chave primária ou de uma tabela com chave primária composta, será necessário definir manualmente 「Record unique key」 na configuração da tabela de dados. Sem um identificador único disponível, os blocos de página poderão não conseguir visualizar, editar ou excluir os registros corretamente.

20260709205835 20260709205854