部署 Umami 访客统计系统

本文介绍了如何使用Umami替代GoogleAnalytics,涉及数据库迁移至MySQL和PostgreSQL的注意事项,包括SQL脚本的调整,以及在Nuxt3环境中配置和部署Umami的过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Google Analytics 收集的信息过多且数据不在自己手里。这里就用 Umami 代替

【官网】https://umami.is/

【Github】https://github.com/umami-software/umami

安装 支持两个数据库:

Mysql 和 Postgresql mysql 5.7 版本的注意 这个 sql 文件中的一些语句与 5.7 版本不兼容,在 run build 时会出错 可以参考 Github issues:https://github.com/umami-software/umami/issues/2118

需要将 migration.sql 中的 

-- AlterTable
ALTER TABLE `event_data` RENAME COLUMN `event_data_type` TO `data_type`;
ALTER TABLE `event_data` RENAME COLUMN `event_date_value` TO `date_value`;
ALTER TABLE `event_data` RENAME COLUMN `event_id` TO `event_data_id`;
ALTER TABLE `event_data` RENAME COLUMN `event_numeric_value` TO `number_value`;
ALTER TABLE `event_data` RENAME COLUMN `event_string_value` TO `string_value`;
 

替换为

-- RenameColumns
ALTER TABLE `event_data` ADD COLUMN data_type INTEGER UNSIGNED AFTER event_data_type;
ALTER TABLE `event_data` ADD COLUMN date_value TIMESTAMP(0) AFTER event_date_value;
ALTER TABLE `event_data` ADD COLUMN event_data_id VARCHAR(36) AFTER event_id;
ALTER TABLE `event_data` ADD COLUMN number_value DECIMAL(19, 4) AFTER event_numeric_value;
ALTER TABLE `event_data` ADD COLUMN string_value VARCHAR(500) AFTER event_string_value;
 
UPDATE event_data
SET data_type = event_data_type,
    date_value = event_date_value,
    event_data_id = event_id,
    number_value = event_numeric_value,
    string_value = event_string_value;
 
ALTER TABLE `event_data` MODIFY data_type INTEGER UNSIGNED NOT NULL;
ALTER TABLE `event_data` MODIFY event_data_id VARCHAR(36) NOT NULL;
 
ALTER TABLE `event_data` DROP COLUMN event_data_type;
ALTER TABLE `event_data` DROP COLUMN event_date_value;
ALTER TABLE `event_data` DROP COLUMN event_id;
ALTER TABLE `event_data` DROP COLUMN event_numeric_value;
ALTER TABLE `event_data` DROP COLUMN event_string_value;
 
ALTER TABLE `event_data` ADD PRIMARY KEY(event_data_id);

在跟目录新建一个 .env 文件,里面填写数据库链接 

DATABASE_URL=mysql://xxx:xxx@xxx:3306/umami
HASH_SALT=xxx

构建 


yarn install

注意端口,默认是 3000,想改的化,记得在 package.json 中 scripts 中 start 命令后面加 -p xxxx

scripts": {
  "dev": "next dev",
  "build": "npm-run-all check-env build-db check-db build-tracker build-geo build-app",
  "start": "next start -p 1111",

打包 

yarn run build

后面会卡住一会儿,要下载 城市 IP 的数据【GeoLite2-City.mmdb】,有 60 MB 左右 运行 安装 pm2 方便管理 

npm install -g pm2
// 然后执行
pm2 start npm --name umami -- start

使用 登陆账号和密码:admin     umami

创建网站信息 然后把跟踪代码放到网站里面 例如(站主是 Nuxt 3) 

本文来源:心盲博客

https://www.xinmangy.cn/jszc/20.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值