# Raspberry Pi中如何安装使用MySQL ## 前言 MySQL作为最流行的开源关系型数据库之一,在Raspberry Pi这样的微型计算机上也能发挥重要作用。本文将详细介绍在Raspberry Pi OS上安装、配置和使用MySQL的完整流程,包括基础操作和常见问题解决方案。 --- ## 一、准备工作 ### 1. 系统要求 - Raspberry Pi 3/4/5(推荐1GB以上内存) - Raspberry Pi OS(原Raspbian)Bullseye或更新版本 - 已连接网络(建议使用有线连接) ### 2. 系统更新 安装前建议先更新系统: ```bash sudo apt update sudo apt upgrade -y
执行以下命令安装MySQL社区版:
sudo apt install mariadb-server -y
注:Raspberry Pi OS默认使用MariaDB(MySQL的分支)作为MySQL实现
检查服务状态:
sudo systemctl status mariadb
正常应显示”active (running)”
sudo mysql_secure_installation
按提示完成以下设置: 1. 设置root密码 2. 移除匿名用户 3. 禁止远程root登录 4. 移除测试数据库 5. 重新加载权限表
编辑配置文件:
sudo nano /etc/mysql/mariadb.conf.d/50-server.cnf
找到bind-address
并修改为:
bind-address = 0.0.0.0
重启服务:
sudo systemctl restart mariadb
sudo mysql -u root -p
CREATE USER 'pi_user'@'localhost' IDENTIFIED BY 'your_password'; GRANT ALL PRIVILEGES ON *.* TO 'pi_user'@'localhost'; FLUSH PRIVILEGES;
-- 创建数据库 CREATE DATABASE pi_project; -- 使用数据库 USE pi_project; -- 创建表 CREATE TABLE sensor_data ( id INT AUTO_INCREMENT PRIMARY KEY, temperature FLOAT, humidity FLOAT, record_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP ); -- 插入数据 INSERT INTO sensor_data (temperature, humidity) VALUES (25.3, 45.2); -- 查询数据 SELECT * FROM sensor_data;
编辑配置文件:
sudo nano /etc/mysql/mariadb.conf.d/50-server.cnf
添加/修改以下参数(适用于1GB内存的Pi):
[mysqld] innodb_buffer_pool_size = 128M key_buffer_size = 32M query_cache_size = 32M
sudo mysqlcheck --all-databases --optimize -u root -p
检查用户权限:
SELECT host, user FROM mysql.user;
sudo systemctl stop mariadb
sudo mysqld_safe --skip-grant-tables &
查看数据库大小:
SELECT table_schema "Database", ROUND(SUM(data_length + index_length) / 1024 / 1024, 2) "Size (MB)" FROM information_schema.TABLES GROUP BY table_schema;
安装Python连接器:
pip3 install mysql-connector-python
示例代码:
import mysql.connector db = mysql.connector.connect( host="localhost", user="pi_user", password="your_password", database="pi_project" ) cursor = db.cursor() cursor.execute("SELECT * FROM sensor_data") for row in cursor: print(row)
通过本文指南,您应该已经掌握了在Raspberry Pi上部署MySQL的全流程。这种轻量级数据库解决方案非常适合物联网项目、家庭自动化系统和小型Web应用开发。随着数据量的增长,建议定期备份数据库(可使用mysqldump
工具)并监控系统资源使用情况。 “`
注:本文约1100字,实际字数可能因Markdown渲染方式略有差异。所有命令均在Raspberry Pi OS Bullseye上测试通过。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。