Sobre a Configuração de Conexões de Banco de Dados

Saiba como instalar o script de automação e executar as etapas que levam a ter instâncias funcionais do Node-RED, do Mosquitto e do Oracle Database. Isso também inclui configurar os diferentes componentes da solução para se conectar uns aos outros.

Executar o Script

O script no repositório GitHub automatiza o provisionamento do ambiente e instala as dependências.

  1. Consulte o Código de Download do link para o repositório GitHub.
  2. Execute o script.
  3. O script provisiona a infraestrutura.
    A automação começa por:
    1. Criando uma VCN e sub-redes e abrindo as portas necessárias.
    2. Provisionando uma instância do OCI Compute com o Oracle Linux como sistema operacional.
  4. O script instala o software.
    1. Instala o Oracle Database (desenvolvedor gratuito) na instância.
    2. Cria um esquema e uma tabela para Node-RED e fornece ao usuário do esquema os privilégios necessários.
    3. Instala dependências Node-RED, como nó e NPM.
    4. Instala o Node-RED.
    5. Instala o servidor Mosquitto.
    6. Atualiza as regras sfw para permitir que essas portas sejam acessadas externamente.
    7. Instala o cliente Oracle e os plug-ins node-red-contrib-oracledb-mod do Node-RED Oracle Database necessários.
    8. Implanta um fluxo Node-RED que assina um tópico em Mosquitto e coloca os dados no banco de dados.

Conectar o Banco de Dados

Depois que tudo estiver ativo e em execução (o que leva cerca de 15 minutos), você precisará adicionar o nome de usuário e a senha no Node-RED para estabelecer conexão com o banco de dados.

  1. Faça log-in em Node-RED <Machine IP>:1880.
  2. Clique duas vezes no nó oracledb.
  3. Clique no botão editar.
  4. Substitua pelo Oracle Autonomous Database.

Criar um Autonomous Database

Use o OCI para configurar o Oracle Autonomous Database.

  1. No OCI, navegue até o Autonomous Database.
  2. Clique em Criar Autonomous Database.
  3. Em Escolher um tipo de carga de trabalho, selecione Processamento de Transação.
  4. Ative o Dimensionamento automático do serviço Compute.
  5. Em Criar credenciais de administrador, digite sua senha.
  6. Na parte inferior da tela, clique em Criar Autonomous Database.
    A tela Detalhes do Autonomous Database é aberta.

Configurar o Autonomous Database

Configure o usuário e o esquema necessários ao Node-RED e crie uma tabela de teste com a qual testar a solução.

  1. Na tela Detalhes do Autonomous Database, clique em Ações do banco de dados > SQL.
    O editor Database Actions | SQL é aberto.
  2. Execute o script a seguir para criar um esquema e um usuário, fornecer as concessões necessárias e criar uma tabela de teste inicial.
    CREATEUSER nodered IDENTIFIED BY<YourPassword>;
    GRANTCREATE SESSION TO nodered;
    GRANTCREATETABLETO nodered;
    GRANTCREATEPROCEDURETO nodered;
    GRANTCREATETRIGGERTO nodered;
    GRANTCREATEVIEWTO nodered;
    ALTERUSER C##NODERED QUOTA UNLIMITED ON USERS;
    CREATETABLE nodered.nodered (col1 varchar2(500),col2 varchar2(500));
    CREATETABLE nodered.sensor_data (
      id NUMBER GENERATED ALWAYS ASIDENTITY, -- Optional auto-generated ID column
      vibration NUMBER,
      sound NUMBER,
      temp NUMBER,
      humi NUMBER,
    timestampTIMESTAMPDEFAULTCURRENT_TIMESTAMP
    );

Configurar a Conexão Node-RED

Conecte o Node-RED ao Autonomous Database configurado anteriormente.

  1. No OCI, navegue pelo Autonomous Database.
  2. Clique em conexão de banco de dados.
  3. Copie a tela de conexão.
  4. Conecte-se (via SSH) ao servidor Node-RED que foi provisionado.
    1. Editar tnsnames.ora.
    2. Adicione a string de conexão: vi /opt/oracle/product/$DBHOME/dbhomeFree/network/admin/tnsnames.ora
    3. Cole a string de conexão.
    4. Renomeie a string de conexão para: adb = (description= (retry_count=20)(retry_delay=3)(address=(protocol=tcps)(port=1522)(host=adb.eu-frankfurt-1.oraclecloud.com))(connect_data=(service_name=ixcsyvrmtjm8ebr_iottest_high.adb.oraclecloud.com))(security=(ssl_server_dn_match=yes)))
  5. Navegue até a console Node-RED.
  6. Edite o nó oracledb.
  7. Modifique a conexão e a segurança do servidor.

    Observação:

    Se você receber o erro ORA-12506: TNS:listener rejected connection based on service ACL filtering, modifique a Lista de Controle de Acesso para incluir o IP do servidor Node-RED. Você também precisará adicionar o IP da máquina da qual está se conectando e desativar o requisito para mTLS.

Configurar o Oracle APEX

Você pode usar os dados de Alternar ou seus próprios dados de sensor.

  1. Iniciar ações do banco de dados.
  2. Clique em APEX WORKSPACES.
  3. Preencha o formulário para criar um espaço de trabalho, garantindo que você use o mesmo usuário do banco de dados criado anteriormente.
  4. Inicie o painel de controle do APEX.
  5. Clique em Criar aplicativo.
  6. Selecione Gráficos de Amostra.
  7. Configure os gráficos para ler os dados da sua tabela.