Metabase:修订间差异
跳到导航
跳到搜索
此页面具有访问限制。如果您看见此消息,则说明您没有权限访问此页面。
(→設定) |
(→設定) |
||
(未显示同一用户的6个中间版本) | |||
第37行: | 第37行: | ||
== 設定 == | == 設定 == | ||
先設定Metabase的log檔案<code>/etc/rsyslog.d/metabase</code>: | 先設定Metabase的log檔案<code>/etc/rsyslog.d/metabase.conf</code>: | ||
<syntaxhighlight lang=" | <syntaxhighlight lang="bash"> | ||
# | # | ||
if $programname == 'metabase' then /var/log/metabase.log | if $programname == 'metabase' then /var/log/metabase.log | ||
& stop | & stop | ||
</syntaxhighlight> | |||
使用[[PostgreSQL]]前需要先有最基本的權限,讓Metabase連上後可以初始化: | |||
<syntaxhighlight lang="sql"> | |||
CREATE USER metabase WITH ENCRYPTED PASSWORD 'metabasepassword'; | |||
GRANT metabase TO postgres; | |||
CREATE DATABASE metabase OWNER = metabase; | |||
</syntaxhighlight> | </syntaxhighlight> | ||
第81行: | 第89行: | ||
MB_DB_HOST=db-db-metabase.srv.example.net | MB_DB_HOST=db-db-metabase.srv.example.net | ||
MB_JETTY_PORT=8000 | MB_JETTY_PORT=8000 | ||
</syntaxhighlight> | |||
這個檔案設定完成後建議將權限改成<code>600</code>: | |||
<syntaxhighlight lang="bash"> | |||
sudo chmod 600 /etc/default/metabase | |||
</syntaxhighlight> | </syntaxhighlight> | ||
2023年9月6日 (三) 21:35的最新版本
Metabase是一套BI视觉化工具。
安装
Metabase的硬件需求不高[1][2],我自己在GCE上用1GB RAM的机器跑还可以。
Metabase需要Java 11+的版本[3],而在Ubuntu 20.04与22.04下预设就是Java 11,所以可以直接用内建的default-jre
并且取得已经编译好的jar档:
sudo apt install -y default-jre; sudo apt clean; mkdir ~/metabase; cd ~/metabase; wget -O metabase-0.47.0.jar https://downloads.metabase.com/v0.47.0/metabase.jar; ln -s metabase-0.47.0.jar metabase.jar
执行
预设的模式是让使用者尝鲜,不需要使用外部的数据库储存资料,会使用Java的H2存放资料:
java -jar metabase.jar
如果使用PostgreSQL,可以建立一个start.sh
,将连线资讯指定到环境变数[4],这边另外指定了Port 8000为网页的接口:
#!/bin/bash
export MB_DB_TYPE=postgres
export MB_DB_DBNAME=metabase
export MB_DB_PORT=5432
export MB_DB_USER=metabase
export MB_DB_PASS=metabasepassword
export MB_DB_HOST=db-metabase.srv.example.net
export MB_JETTY_PORT=8000
java -jar metabase.jar
设定
先设定Metabase的log档案/etc/rsyslog.d/metabase.conf
:
#
if $programname == 'metabase' then /var/log/metabase.log
& stop
使用PostgreSQL前需要先有最基本的权限,让Metabase连上后可以初始化:
CREATE USER metabase WITH ENCRYPTED PASSWORD 'metabasepassword';
GRANT metabase TO postgres;
CREATE DATABASE metabase OWNER = metabase;
开机透过systemd自动执行Metabase有两个档案要设定,一个是/etc/systemd/system/metabase.service
:
[Unit]
Description=Metabase server
After=syslog.target
After=network.target
[Service]
WorkingDirectory=/home/service-metabase/metabase
ExecStart=/usr/bin/java -jar /home/service-metabase/metabase/metabase.jar
EnvironmentFile=/etc/default/metabase
User=service-metabase
Type=simple
StandardOutput=syslog
StandardError=syslog
SyslogIdentifier=metabase
SuccessExitStatus=143
TimeoutStopSec=120
Restart=always
[Install]
WantedBy=multi-user.target
另外一个是/etc/default/metabase
:
#
MB_DB_TYPE=postgres
MB_DB_DBNAME=metabase
MB_DB_PORT=5432
MB_DB_USER=metabase
MB_DB_PASS=metabasepassword
MB_DB_HOST=db-db-metabase.srv.example.net
MB_JETTY_PORT=8000
这个档案设定完成后建议将权限改成600
:
sudo chmod 600 /etc/default/metabase
档案设定完后需要指定开机跑起来:
sudo systemctl daemon-reload; sudo systemctl enable metabase.service
参考资料
- ↑ Minimum / Recommended Hardware Requirement. 2017-12-12 [2023-09-06] (English).
- ↑ Metabase: RAM Usage. 2019-11-19 [2023-09-06] (English).
- ↑ Java versions. [2023-09-06] (English).
- ↑ Environment variables. [2023-09-06] (English).
外部链接
- 官方网站 (英文)