服务器安装mysql,用于数据持久化(centOS 环境下)
0.删除已安装的mysql
# 检查mariadb
rpm -qa|grep mariadb
# 删除mariadb
rpm -e --nodeps mariadb-server
rpm -e --nodeps mariadb
rpm -e --nodeps mariadb-libs
# 检查 mysql
rpm -qa|grep mysql
# 删除msql
rpm -e --nodeps xxx
1.下载 mysql yum 包
# 查看系统版本
cat /etc/redhat-release
wget https://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm
2.安装 mysql 源
yum localinstall mysql57-community-release-el7-11.noarch.rpm
# 检查是否安装成功
yum repolist enabled | grep "mysql.*-community.*"
3.安装 mysql 服务端
yum install -y mysql-community-server
4.启动 mysql
systemctl start mysqld.service
5.查看mysql是否启动成功
systemctl status mysqld.service
6.获取root的随机生成密码并登录
grep 'temporary password' /var/log/mysqld.log
mysql -u root -p
7.简化密码校验规则
mysql> set global validate_password_policy=0;
mysql> set global validate_password_length=1;
8.重置密码并授权远程登录
ALTER USER 'root'@'localhost' IDENTIFIED BY 'yourpassword';
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'yourpassword' WITH GRANT OPTION;
FLUSH PRIVILEGES;
9.开机自启动
systemctl enable mysqld
systemctl daemon-reload
10.设置mysql默认字符集
vim /etc/my.cnf
[mysql]
default-character-set=utf8
[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
default-storage-engine=INNODB
character_set_server=utf8
symbolic-links=0
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid
11.重启生效
# 启动
mysql:service mysqld start
# 停止
mysql:service mysqld stop
# 重启
mysql:service mysqld restart
12.移除 mysql yum 包
rpm -qa | grep mysql
yum -y remove mysql57-community-release-el7-11.noarch
nacos 部署
# 创建数据库
create database nacos_config default charset 'utf8' collate 'utf8_bin';
# 创建nacos用户
grant all on nacos.* to 'nacos'@'%' identified by 'nacos';
下载指定版本(v2.0.3)压缩包,github.com/alibaba/nac… ,解压并进入conf文件。将 nacos-mysql.sql 导入数据库。
编辑docker compose文件
# docker compose 文件
vim docker-compose
# 编辑
version: "2"
services:
nacos:
image: nacos/nacos-server:v2.0.3
container_name: nacos-standalone-mysql
environment:
PREFER_HOST_MODE: hostname
MODE: standalone
SPRING_DATASOURCE_PLATFORM: mysql
MYSQL_SERVICE_HOST: mysql ip
MYSQL_SERVICE_DB_NAME: nacos_config
MYSQL_SERVICE_PORT: 3306
MYSQL_SERVICE_USER: nacos
MYSQL_SERVICE_PASSWORD: nacos
volumes:
- ./standalone-logs/:/home/nacos/logs
ports:
- "8848:8848"
- "9848:9848"
- "9555:9555"
restart: on-failure
# yaml文件
mv docker-compose docker-compose.yaml
启动服务
# 启动服务
docker-compose up -d
访问链接
http://ip:8848/nacos
用户名:nacos
密码:nacos
❗❗❗ nacos版本的坑:nacos官方目前的版本最新是2.2.0。使用镜像latest或者2.1.0以上的镜像,安装完成之后,正常启动。
可以创建命名空间,用户。但是新增配置就会报错:发布失败。请检查参数是否正确。
原因:nacos 初始化sql与nacos版本不一致,
nacos 2.1.0版本之后初始化数据库中config_info 和 his_config_info 表中新增了encrypted_data_key密钥字段
nacos.2.1.0 及之前数据库初始化脚本为nacos-mysql.sql,2.2.0 之后重命名为mysql-schema.sql。
所以推荐使用v2.0.3版本的镜像以及nacos-mysql.sql 文件导入数据库。
使用docker mysql
下载指定版本docker压缩包:github.com/nacos-group… 解压并进入example 文件夹
cd nacos-docker-2.0.3/example
vim standalone-mysql-5.7.yaml
${NACOS_VERSION} --> v2.0.3
服务启停
docker-compose -f standalone-mysql-5.7.yaml up -d
docker-compose -f standalone-mysql-5.7.yaml down