重新安装nacos(单机模式 + 已配置 MySQL)
·
前提准备
- 已安装 JDK 8/11(Nacos 2.x 推荐版本),且配置
JAVA_HOME; - MySQL 5.7+/8.x 已运行,且能正常访问;
- 清理旧安装包(避免残留配置干扰)。
步骤 1:彻底卸载旧版 Nacos
1.1 停止旧 Nacos 进程
bash
运行
# 停止进程
sh /usr/software/nacos/nacos/bin/shutdown.sh
# 确认进程已杀死(无输出则已停止)
ps -ef | grep nacos | grep -v grep
1.2 删除旧安装目录(彻底清理)
bash
运行
# 备份重要配置(可选,如需要保留旧配置)
cp -r /usr/software/nacos/nacos/conf /tmp/nacos-conf-backup
# 删除整个 Nacos 目录
rm -rf /usr/software/nacos/nacos
1.3 清理 Derby 残留数据(避免干扰)
bash
运行
# 删除 Derby 数据库文件(如果有)
rm -rf ~/nacos/data
rm -rf /tmp/nacos
步骤 2:重新下载并解压 Nacos 安装包
推荐使用稳定版 2.2.0(兼容性好):
bash
运行
# 进入安装目录
cd /usr/software/nacos
# 下载 Nacos 2.2.0 安装包(也可手动下载上传)
wget https://github.com/alibaba/nacos/releases/download/2.2.0/nacos-server-2.2.0.tar.gz
# 解压
tar -zxvf nacos-server-2.2.0.tar.gz
# 重命名为 nacos(方便后续操作)
mv nacos-server-2.2.0 nacos
步骤 3:初始化 MySQL 数据库(全新配置)
3.1 创建数据库并执行官方脚本
bash
运行
# 登录 MySQL
mysql -uroot -p
# 1. 创建数据库(字符集必须 utf8mb4)
CREATE DATABASE IF NOT EXISTS nacos_config CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
# 2. 切换数据库
USE nacos_config;
# 3. 执行官方初始化脚本(自动创建 users/roles/config_info 等表)
SOURCE /usr/software/nacos/nacos/conf/nacos-mysql.sql;
# 验证表是否创建成功(能看到 users/roles 表即正常)
SHOW TABLES;
3.2 授权 MySQL 访问权限
sql
# 授权 root 本地访问(替换为你的密码)
GRANT ALL PRIVILEGES ON nacos_config.* TO 'root'@'localhost' IDENTIFIED BY '你的MySQL密码';
GRANT ALL PRIVILEGES ON nacos_config.* TO 'root'@'127.0.0.1' IDENTIFIED BY '你的MySQL密码';
FLUSH PRIVILEGES;
# 退出 MySQL
EXIT;
步骤 4:配置 Nacos 连接 MySQL(核心)
编辑 application.properties,仅保留必要配置(避免冗余):
bash
运行
vi /usr/software/nacos/nacos/conf/application.properties
清空原有内容,粘贴以下配置(替换 MySQL 密码):
properties
# 核心配置:启用 MySQL 数据源
spring.datasource.platform=mysql
db.num=1
db.url.0=jdbc:mysql://127.0.0.1:3306/nacos_config?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&useUnicode=true&useSSL=false&serverTimezone=UTC&allowPublicKeyRetrieval=true
db.user.0=root
db.password.0=你的MySQL密码
# Web 端口(默认 8848,可修改)
server.port=8848
# 单机模式标识
nacos.standalone=true
# 关闭不必要的认证(避免干扰)
nacos.core.auth.enabled=false
# MySQL 驱动配置(兼容 5.7/8.x)
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
步骤 5:添加 Nacos 登录用户(MySQL 中)
bash
运行
# 重新登录 MySQL
mysql -uroot -p nacos_config
# 插入默认用户 nacos(密码为 BCrypt 加密的 nacos,明文密码就是 nacos)
INSERT INTO users (username, password, enabled)
VALUES ('nacos', '$2a$10$EuWPZHzz32dJN7jexM34MOeYirDdFAZm2kuWj7VEOJhhZkDrxfvUu', 1);
# 分配管理员权限
INSERT INTO roles (username, role) VALUES ('nacos', 'ROLE_ADMIN');
# 验证插入结果
SELECT * FROM users;
SELECT * FROM roles;
# 退出 MySQL
EXIT;
步骤 6:启动并验证全新 Nacos
6.1 启动单机模式
bash
运行
# 进入 bin 目录
cd /usr/software/nacos/nacos/bin
# 启动单机模式(-m standalone 可省略,因为配置文件已设 nacos.standalone=true)
sh startup.sh -m standalone
6.2 检查启动日志(无报错则成功)
bash
运行
# 查看启动日志
tail -500 /usr/software/nacos/nacos/logs/start.out
# 成功标识:
# 1. "Nacos server startup successfully in standalone mode."
# 2. "Successfully initialized DataSource"(MySQL 连接成功)
# 3. 无 "unknown user" "No DataSource set" 等报错
6.3 登录控制台验证
- 访问地址:
http://你的服务器IP:8848/nacos; - 输入账号:
nacos,密码:nacos; - 能正常登录且无报错,说明安装配置成功。
步骤 7:(可选)设置开机自启(方便使用)
bash
运行
# 创建系统服务文件
vi /etc/systemd/system/nacos.service
粘贴以下内容(替换 JAVA_HOME 和 Nacos 目录):
ini
[Unit]
Description=Nacos Server
After=network.target mysqld.service
[Service]
Type=forking
Environment="JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk" # 替换为你的 JAVA_HOME
ExecStart=/usr/software/nacos/nacos/bin/startup.sh -m standalone
ExecStop=/usr/software/nacos/nacos/bin/shutdown.sh
Restart=on-failure
[Install]
WantedBy=multi-user.target
刷新并启用服务:
bash
运行
systemctl daemon-reload
systemctl enable nacos
systemctl start nacos
总结
- 重装核心:彻底删除旧目录 + 重新初始化 MySQL 表 + 清空冗余配置,避免残留问题;
- 关键配置:
application.properties明确启用 MySQL + 单机模式,MySQL 中提前添加用户并授权; - 验证标准:启动日志无报错、控制台能正常登录
nacos/nacos。
如果重装后仍有问题,优先检查:
- MySQL 密码是否正确;
application.properties中 MySQL 地址是否写127.0.0.1(而非localhost,避免 DNS 解析问题);- 启动日志中是否有 MySQL 连接超时 / 权限错误。
更多推荐




所有评论(0)