225 字
1 分钟
grafanadb迁移到mysql

因为安全需求需要把grafana的数据库迁移到云上mysql,所以总结了一些遇到的问题:

先说步骤:

1.sqlite3 /var/lib/grafana/grafana.db .dump > grafana.sql

2.shell mysql -u username -p -h localhost database_name < grafana.sql

3.修改/etc/grafana/grafana.ini,添加

database type = mysql
host = localhost:3306
name = database_name
user = username
password = userpassword

4.然后重启grafana即可 systemctl restart grafana-server

PS:但是mysql语法和sqllite语法是有区别的,所以第二步之前需要修改grafana.sql的语法格式:

  • PRAGMA foreign_keys=OFF;BEGIN TRANSACTION;没有这个语句,需要删掉

  • 🐦📊之类的表情最好不要有,存储会报错,虽然也可以解决(data是列名,TEXT是类型): ALTER TABLE dashboard_version CHANGE data data TEXT CHARACTER SET utf8mb4 ;

  • AUTOINCREMENT 改为 AUTO_INCREMENT

  • TEXT默认一般不能有DEFAULT,最好改为VARCHAR(255)

  • TEXT格式是不能作为UNIQUE INDEX的 必须要修改为VARCHAR(255)

  • datetime 可能会出现格式问题 2023-03-02 14:36:35.578526458+8:00 只要把最后的+8:00去掉就可以了

grafanadb迁移到mysql
https://blog.ikeno.top/posts/grafanadb/
作者
ike
发布于
2023-03-13
许可协议
CC BY-NC-SA 4.0