zabbix安装(ubuntu系统)

zabbix安装(Ubuntu、mysql)

若系统或数据库不同,可转至官网点击相应配置,查看配套安装教程

Download and install Zabbix 7.4 for Ubuntu 24.04 Noble(amd64, arm64), MySQL, Nginx

zabbix

一、安装Zabbix仓库

1
2
3
4
5
6
7
8
# 拉取zabbix包
wget https://repo.zabbix.com/zabbix/7.4/release/ubuntu/pool/main/z/zabbix-release/zabbix-release_latest_7.4+ubuntu24.04_all.deb

# 安装zabbix包
dpkg -i zabbix-release_latest_7.4+ubuntu24.04_all.deb

# 更新(读取)软件包列表
apt-get update

二、安装Zabbix服务器、前端、代理

1
apt install zabbix-server-mysql zabbix-frontend-php zabbix-nginx-conf zabbix-sql-scripts zabbix-agent

三、安装mysql-server

1
apt-get install mysql-server

四、创建zabbix数据库

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
mysql -uroot -p
password
# 修改root默认密码
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY '123456';
# 刷新缓存
mysql> flush privileges;
# 创建名为 zabbix 的数据库,设置字符集为 utf8mb4,排序规则为utf8mb4_bin(区分大小写敏感)
mysql> create database zabbix character set utf8mb4 collate utf8mb4_bin;
# 创建用户
mysql> create user zabbix@localhost identified by 'password';
# 授权
mysql> grant all privileges on zabbix.* to zabbix@localhost;
# 设置全局变量,开启log_bin_trust_function_creators
# 设置效果:
# = 1:允许创建存储函数而不检查其确定性
# = 0(默认):严格模式,要求函数声明为DETERMINISTIC、NO SQL或READS SQL DATA
mysql> set global log_bin_trust_function_creators = 1;
mysql> quit;

五、导入默认数据

1
2
# 执行此命令后等待一段时间
zcat /usr/share/zabbix/sql-scripts/mysql/server.sql.gz | mysql --default-character-set=utf8mb4 -uzabbix -p zabbix

六、关闭log_bin_trust_function_creators选项

1
2
3
4
mysql -uroot -p
password(mysql默认密码)
mysql> set global log_bin_trust_function_creators = 0;
mysql> quit;

七、修改Zabbix默认密码

修改 /etc/zabbix/zabbix_server.conf

1
DBPassword=password

八、为Zabbix前端配置PHP

修改 /etc/zabbix/nginx.conf

1
2
3
将以下两条注释去掉
# listen 8080;
# server_name example.com;

九、重启zabbix和代理进程

1
2
3
4
# 重启
systemctl restart zabbix-server zabbix-agent nginx php8.3-fpm
# 开机自启
systemctl enable zabbix-server zabbix-agent nginx php8.3-fpm

十、打开Zabbix UI网页

1
2
3
4
5
# 安装机ip:8080
# 例:
192.168.135.144:8080

密码如果和自己设置不对,就试试zabbix

Mysql允许远程连接

MySQL版本:MySQL8.0

一、修改 MySQL 配置文件

1
2
3
4
5
6
7
1.找到并打开MySQL的配置文件,通常位于

/etc/mysql/mysql.conf.d/mysqld.cnf 或 /etc/mysql/my.cnf

sudo vim mysqld.cnf

2.找到“bind-address=127.0.0.1”并将其改为“0.0.0.0”,表示允许所有 IP 地址连接

二、创建远程用户并授予权限

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
1.登录MySQL(以root用户确保有足够的权限)

sudo mysql -u root -p

2.创建新的远程 root 用户:

CREATE USER 'root'@'%' IDENTIFIED BY '新密码';

3.授予权限:

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION;

4.刷新权限:

FLUSH PRIVILEGES;

保留本地 root 用户:这样可以确保本地的 root@localhost 用户仍然存在,不会影响本地服务和脚本。

明确的远程访问:新创建的 root@'%' 用户专门用于远程连接,权限明确。

5.重启MySQL服务

sudo systemctl restart mysql

三、配置防火墙

1.确保防火墙允许 MySQL 的默认端口(通常是 3306)的流量。可以使用以下命令开放端口:

sudo ufw allow 3306/tcp

四、阿里云或其他云设置入站规则

如果你使用的是阿里这种云服务器,还需要设置其入站规则,开放3306端口

1
2
3
4
删除用户:
DROP USER 'username'@'localhost';
查询用户表
SELECT User, Host FROM mysql.user;

zabbix安装(ubuntu系统)
http://bote798.github.io/2025/01/14/zabbix/
作者
bote798
发布于
2025年1月14日
更新于
2025年12月24日
许可协议