1

Here's what it want to do. I'm using my raspberry pi kind-of as another computer. I'm not using it as a server. I'm not accessing it remotely. And I don't care to do either of those as of this time.
So I just want to put/make a database on my raspberry pi. and access it and edit it with that same raspberry pie. I'm not using it to host a website I'm not using it as a server of any kind. It's not even hooked up to the Internet all the time. I only hook it up momentarily when I need to download this or that


I went and I found something called Firebird. Which looked promising. And they do have a version that they call "embedded". Which on their website is said to be used as a desktop database.

I thought "that sounds like what I want". so I went ahead and downloaded and transferred it to my raspberry pi. and then I figured out that it is a ".RPM" file. and what I really need is a ".deb". it appears that I can convert it to a " .deb" file probably by using some convoluted method. I don't have any experience with databases. and I don't know how much of a learning curve Firebird would be in light of that.

So I was then wondering is there a better option that is designed for raspbian and related versions of Linux that use the ".deb" extension.

MySQL looks like it would work fine maybe. I just have to learn how to use it. Except I would then want to probably make a GUI for it. and from my research about that... all I can find on that is stuff talking about making a web-based GUI. which sounds like it then throws me back to using my raspberry pi as a server and accessing the database through the web. Which I don't want to do I want to access it locally through my raspberry pi (for now (not that it can be changed later)).

as you might be able to tell I'm not very experienced at all with Linux or with raspberry pie.

I know this is really not a technical question. But I would have no idea where else to post this. And I don't have any friends that have more experience with rasberry pi than I do to ask them about this. Certainly somebody else has done something similar to what I want to do, with there raspberry pi.


so then... Should I just go ahead and try Firebird? If so do you have any tips for me.

Otherwise is there another database I should try that would work well for my purposes?

And if it doesn't have a GUI would there be a way for me to program that myself?

And perhaps some links to some stuff I can read up on. Or some links to some tutorials. Of course not necessary but if you happen have that that would be nice.

also i would like to use it to make more then one database. I will probably only be accessing them one at a time though.

  • Could you edit your question to be more concise? What do you plan to store in your database? – ArchHaskeller Sep 23 '15 at 2:52
2

Should I just go ahead and try Firebird?

You don't just need a .deb, you need a .deb compiled specifically for the pi's CPU architecture (ARMv6 for A/B/+, and ARMv6 or ARMv7 for the 2). Those don't look to be available; Firebird claims to be open source so you could try compiling it (if you can find the source), but I don't recommend that path.

I'm not using it as a server of any kind.

You are slightly confused about the term "server". This is used casually to refer to an online system providing online services, but more technically, with regard to particular pieces of software, the client-server model is a predominant one and all general purpose systems use servers for various fundamental purposes. Meaning, all your computers including the pi already do this, and trying to get rid of them would cripple the system. For example, the GUI stack on GNU/Linux, including Raspbian, is based on the Xorg server. Individual GUI applications are clients that communicate with the X server, which controls the desktop (there are other layers of "controlling the desktop" as well, but X is the most fundamental one).

Operating systems have a sort of client-server architecture. The OS kernel is essentially a server that runs all the time in the background and responds to requests from userland applications, which are its clients.

Database systems also commonly use a client server model. This means the database, like your GUI desktop, is controlled by a server application which runs constantly in the background.1 To access the database, you use a client application which sends and receives information from the server. Most SQL databases, including MySQL, use this model. To use MySQL in any form, you must run a MySQL server. However, this is distinct from a GUI or web interface, which would be one of various options for a MySQL client.

The reason this model is used is because it is sensible, robust, and performs well, but there are exceptions to it, notably SQLite, which uses only a foreground application that works directly on stored files, rather than having a server as a gateway.

Running server software does not mean it is accessible from the internet. That is just a matter of configuration. This includes web servers, one of which would be necessary if you want to use a web interface to a database.

The advantage of a web interface is that there are lots of them and they are widely used. The disadvantage is you have the hassle of configuring a web server such as Apache to make use of them. Presumably there are tutorials around to help you with this.

Regular GUIs are less widely used for database access, but they do exist; rather than looking for an all in one implementation such as Firebird, look for one which is an interface to an existing popular SQL DB such as MySQL or SQLite. A quick internet search turned up SQLiteStudio, which I could not find in the Raspbian repos (note it has a small source download and would probably build quickly on the pi), but when I went to look I noticed SQLite browser. The package is sqlitebrowser, so to try it:

apt-get install sqlitebrowser

Finally, note that SQL may be overkill depending on you and your purposes. If you are doing a course on RDMS's it is probably all about SQL, but if you just want something to store key/value pairs you might want to investigate a Berkeley DB implementation.


1. Background applications such as this do not use any CPU when inactive, and they generally have a relatively small memory footprint. A quick check of a fairly standard apache here showed it starts up with 6 process using a total of about 20 MB RAM (when adjusted for shared segments).

  • +1 for the lecture on application design, and the SQLite Browser app recommendations :) – Phil B. Sep 22 '15 at 16:43
1

Apart from you needing to reformat your post above to make it less rambling and more a compact description of what you want to achieve (Use a local database on your Raspberry Pi) and what you have tried (pulling a Firebird RPM package from "somewhere"), you should take a look at the available packages in Raspbian.

I'm not sure how familiar you are with the inner workings of Raspbian, and if you are looking for a purely GUI (Graphical/Desktop) way of installing software or are fine with doing it all via the command line, but there are several ways to get a database:

  1. Install one of the many many database packages in a terminal window using sudo apt-get install <package-name> (e.g. sudo apt-get install firebird2.5-classic). This site has an overview of all the Database packages you can look at.

  2. Use the Pi-Store on the Raspbian desktop. It contains many applications - however, I've noticed some that require payment even though via the first method they are free.

  3. Instead of getting a dedicated database, have you looked at LibreOffice? You could use LibreOffice Calc (an Excel clone) as a simple database.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.