Mysql - Ubuntu

1. Mysql - Ubuntu

Edy
edylinux

(usa Outra)

Enviado em 30/09/2016 - 10:02h

Bom dia,

Estou buscando auxilio com material de apoio e dicas de como realizar uma configuração de backup de banco de dados com Raspberry.
Tenho uma programação enviando dados para um servidor remoto usando a raspberry, porém quando cai a conexão acabo perdendo aqueles instante onde tive dados.
Penso que poderei gravar dados na raspberry (local) com base de dados Mysql (local), para que seja enviado para meu servidor(remoto) quando a internet voltar. Minha questão é que linha de estudo devo seguir para ser possivel essa implementação ?


  


2. Re: Mysql - Ubuntu

Uilian Ries
uilianries

(usa Linux Mint)

Enviado em 30/09/2016 - 13:56h

Você quer fazer uma cache com persistência apenas.
Pode até usar banco de dados, mas Raspberry é limitada, quando fiz isso, optei por usar Sqlite.

C++ e C não possuem ligação direta com banco de dados, como Java, por exemplo, mas existem boas bibliotecas que fazem essa ligação.
SQlite, por exemplo, possui uma API para C/C++: https://www.sqlite.org/quickstart.html

Por outro lado, no seu caso eu faria algo mais simples, utilizaria serialização, do objeto e colocaria a saída num arquivo.
Existem boas bibliotecas neste sentido, como Cereal, Boost serialization e Google Flatbuffer.

--
Uilian Ries
Linux Counter: 521986


3. Re: Mysql - Ubuntu

Edy
edylinux

(usa Outra)

Enviado em 30/09/2016 - 16:57h

uilianries escreveu:

Você quer fazer uma cache com persistência apenas.
Pode até usar banco de dados, mas Raspberry é limitada, quando fiz isso, optei por usar Sqlite.

C++ e C não possuem ligação direta com banco de dados, como Java, por exemplo, mas existem boas bibliotecas que fazem essa ligação.
SQlite, por exemplo, possui uma API para C/C++: https://www.sqlite.org/quickstart.html

Por outro lado, no seu caso eu faria algo mais simples, utilizaria serialização, do objeto e colocaria a saída num arquivo.
Existem boas bibliotecas neste sentido, como Cereal, Boost serialization e Google Flatbuffer.

--
Uilian Ries
Linux Counter: 521986


Agradeço pela resposta.

Vou pesquisar sobre este assunto que descreveu abaixo. Não programo e Java, na verdade meu conceito de programa é apenas para baixo nível, entretanto consegui desenvolver uma pequena aplicação que armazena dados em um banco de dados remoto, utilizando c/c++(puro).

O que o amigo chama de ligação direta com o banco ?, pois utilizei tranquilamente com a biblioteca mysql para c/c++ (seria isso ?).






4. Re: Mysql - Ubuntu

Uilian Ries
uilianries

(usa Linux Mint)

Enviado em 30/09/2016 - 17:17h

edylinux escreveu:


Agradeço pela resposta.

Vou pesquisar sobre este assunto que descreveu abaixo. Não programo e Java, na verdade meu conceito de programa é apenas para baixo nível, entretanto consegui desenvolver uma pequena aplicação que armazena dados em um banco de dados remoto, utilizando c/c++(puro).

O que o amigo chama de ligação direta com o banco ?, pois utilizei tranquilamente com a biblioteca mysql para c/c++ (seria isso ?).





Eu também trabalho com baixo, mas isso não quer dizer que é melhor ou mais seguro.

Ligação direta, digo que a linguagem tenha tratamento para banco de dados nativamente, dando algum nível de abstração.
Você consegui sem problemas usar MySQL, o que é muito bom. Mas imaginamos que mais pra frente queira usar SQLite. Vai precisar muita coisa no código.
Existem bibliotecas que abstraem qual base de dados está sendo acessada e também garantem mais segurança, como prevenção de SQL Injection. Eu usei durante um tempo a biblioteca SQLCPP11: https://github.com/rbock/sqlpp11

Mas novamente, me parece mais interessante você apenas serializar o objeto e recurar do arquivo.
Existem alguns exemplos da Boost Serializarion no blog do Boris Schäling: http://theboostcpplibraries.com/boost.serialization-archive
A Cereal é movida a C++11: https://uscilab.github.io/cereal/

--
Uilian Ries
Linux Counter: 521986






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts