指点成金-最美分享吧

登录

在树莓派上安装MySQL数据库和简单使用方法

佚名 举报

篇首语:本文由小编为大家整理,主要介绍了在树莓派上安装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 -pEnter password:Welcome to the MySQL monitor.  Commands end with ; or \g.Your MySQL connection id is 47Server 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 itsaffiliates. Other names may be trademarks of their respectiveowners.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 changedmysql> 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> quitBye

整个过程下来,发现MySQL在树莓派上的部署与操作与在桌面Linux平台上几乎没有差别。这里唯一需要注意的是,因为树莓派的硬件资源有限,所以在配置MySQL的优化选项时,需要降低其对系统资源的使用。具体配置细节在我亲自研究试验之后再进行补充。

以上是关于在树莓派上安装MySQL数据库和简单使用方法的主要内容,如果未能解决你的问题,请参考以下文章