# 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 &
查看數據庫大?。?/p>
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進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。