在树莓派上安装MySQL数据库和简单使用方法
Posted huayucong
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在树莓派上安装MySQL数据库和简单使用方法相关的知识,希望对你有一定的参考价值。
在嵌入式Linux平台下如果需要使用数据库功能,一般会选择SQLite或mysql。SQLite是轻量级、基于文件的关系数据库,系统资源占用较少;但是SQLite的缺点是不支持远程部署和访问。对于大多数应用,SQLite是很易用的数据库,我之前就使用过它开发过一套生产管理系统;但是当需要远程访问数据并提供数据库安全时,MySQL则是更好的选择。考虑到树莓派的性能局限,其本身并不适合集成数据展示功能(无论是基于GUI的还是基于web的)。于是可以将其只作为数据记录平台,而将数据的整理、展示在PC端完成。这种模式下,树莓派可以作为数据采集主机,将有线 / 无线节点的数据进行集中采集记录,再通过PC进行分析和展示。在这样的初衷驱使下,我研究并整理了如何在树莓派上安装和使用MySQL。
1. 安装MySQL
使用管理员权限运行apt-get获取最新的MySQL及Python编程接口(之后用于数据库编程):
$ sudo apt-get install mysql-server python-mysqldb
安装过程中需要输入root管理员的密码,该密码之后用于访问数据库系统。
2. 测试MySQL
通过以下命令运行MySQL的命令提示系统,并输入在安装过程中设置的密码:
mysql -u root -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \\g.
Your MySQL connection id is 47
Server version: 5.5.41-0+wheezy1 (Debian)
Copyright (c) 2000, 2014, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\\h' for help. Type '\\c' to clear the current input statement.
查看当前已建立的数据库:
mysql> SHOW DATABASES;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
+--------------------+
rows in set (0.00 sec)
3. 创建一个新的数据库和表单
以上数据库都是系统建立的数据库,要想开始插入数据,首先需要建立新的数据库和表单。这里假设要实现一个CPU温度记录的功能,存放在名为"sensordb"的数据库中。使用以下命令建立数据库:
mysql> CREATE DATABASE sensordb;
Query OK, 1 row affected (0.00 sec)
查看数据库是否建立成功:
mysql> SHOW databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| sensordb |
+--------------------+
rows in set (0.01 sec)
在sensordb数据库下创建一个表单(table),该表单包含两个域(fields):日期和当天平均CPU温度。时间域使用的数据格式为DATE;而温度使用DECIMAL(4,1),即最大三位整数加一位小数。
mysql> USE sensordb;
Database changed
mysql> CREATE TABLE cputemptable(recordtime DATE, temp DECIMAL(4,1));
Query OK, 0 rows affected (0.03 sec)
查看表单是否建立成功:
mysql> SHOW TABLES;
+--------------------+
| Tables_in_sensordb |
+--------------------+
| cputemptable |
+--------------------+
row in set (0.00 sec)
查看表单的域名称与类型:
mysql> DESCRIBE cputemptable;
+------------+--------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+------------+--------------+------+-----+---------+-------+
| recordtime | date | YES | | NULL | |
| temp | decimal(4,1) | YES | | NULL | |
+------------+--------------+------+-----+---------+-------+
rows in set (0.01 sec)
4. 向数据库中插入测试数据
在上一步中已经成功建立了用于CPU温度采集的数据库和表单,但是因为没有任何数据,所以该表单中没有任何内容。现在通过手动插入的方式向该表单中插入若干数据,测试是否可以正常运行。
mysql> INSERT INTO cputemptable
-> values('2015-03-25', 36.5);
mysql> INSERT INTO cputemptable
-> values('2015-03-26', 39.5);
以上每条如果操作成功,都回返回提示:
Query OK, 1 row affected (0.00 sec)
5. 查看数据库操作的结果
为了验证以上数据是否成功插入,可以通过select语句检索数据库:
mysql> SELECT * FROM cputemptable;
+------------+------+
| recordtime | temp |
+------------+------+
| 2015-03-25 | 36.5 |
| 2015-03-26 | 39.5 |
+------------+------+
rows in set (0.00 sec)
可以看到之前的两条数据已经成功插入到cputemptable数据表中。
最后使用quit退出交互系统:
mysql> quit
Bye
整个过程下来,发现MySQL在树莓派上的部署与操作与在桌面Linux平台上几乎没有差别。这里唯一需要注意的是,因为树莓派的硬件资源有限,所以在配置MySQL的优化选项时,需要降低其对系统资源的使用。具体配置细节在我亲自研究试验之后再进行补充。
以上是关于在树莓派上安装MySQL数据库和简单使用方法的主要内容,如果未能解决你的问题,请参考以下文章
树莓派开发笔记(十五):树莓派4B+从源码编译安装mysql数据库