Skip to main content

环境搭建

数据库初始化

1)初始化数据库。

执行数据库&建表语句初始化 SQL 语句,文件地址:/resources/database/link.sql,数据库后续变动比较少。

2)初始化建表语句&初始化数据。

执行数据库初始化 SQL 文件,文件夹地址:/resources/database/link-data.sql,如果后续遇到代码中关于数据库相关的报错,重新执行下对应库的 SQL 文件。

MySQL 5.7.x

启动 MySQL 实例,复制对应的配置文件。

docker run --name mysql \
-p 3306:3306 \
-e MYSQL_ROOT_PASSWORD=root \
-d mysql:5.7.36

# ~/docker/software/mysql/conf 是本地目录,没有的话需要创建
docker cp mysql:/etc/mysql/mysql.conf.d/mysqld.cnf ~/docker/software/mysql/conf
  • -d:以后台的方式运行。
  • --name mysql:指定容器的名称为 mysql。
  • -p3306:3306:将容器的 3306 端口挂载到宿主机的 3306 端口上。
  • -e MYSQL_ROOT_PASSWORD=root:指定 root 的密码为 root。

打开 ~/docker/software/mysql/conf mysqld.cnf 文件,增加以下内容。

# 配置文件中添加如下内容,注意是在在[mysqld]目录中
log-bin=mysql-bin # 开启 binlog
binlog-format=ROW # 选择 ROW 模式
server-id=1 # 配置 MySQL replaction 需要定义,不要和 canal 的 slaveId 重复

为了后续 Canal 对接,这里直接开启 BinLog 相关配置。

删除原 MySQL 容器,通过新配置创建新的容器。

# 删除运行中的 MySQL 容器
docker rm -f mysql

# 运行 Docker 容器命令
# /etc/localtime 时间同步
# /docker/software/mysql/conf 同步配置文件,上面配置的内容就会覆盖容器中的配置文件
# /docker/software/mysql/log 同步日志目录
# /docker/software/mysql/data 同步 MySQL 的一些文件内容(对数据进行备份)
# MYSQL_ROOT_PASSWORD=root 默认 root 的密码是 root
docker run --name mysql \
-p 3306:3306 \
-v /etc/localtime:/etc/localtime \
-v ~/docker/software/mysql/conf:/etc/mysql/mysql.conf.d \
-v ~/docker/software/mysql/log:/var/log/mysql \
-v ~/docker/software/mysql/data:/var/lib/mysql \
-e MYSQL_ROOT_PASSWORD=root \
-d mysql:5.7.36

进入到 MySQL 的命令行模式来给 root 账号授权所有 ip 能够访问。

# 使用 MySQL 容器中的命令行
docker exec -it mysql /bin/bash

# 使用 MySQL 命令打开客户端:
mysql -uroot -proot --default-character-set=utf8

# 接着创建一个账户,该账号所有 IP 都能够访问
grant all privileges on *.* to 'root' @'%' identified by 'root';

# 刷新生效
FLUSH PRIVILEGES;

查看 binlog 日志是否已经开启。

# 查看 binlog 日志是否开启
show variables like 'log_%';

# 查看主结点当前状态
show master status;

如果 log_bin 为 ON,即为开启状态。

Redis Latest

通过简易版方式安装,主打的就是有问题铲了重装。

docker run -p 6379:6379 --name redis  -d redis redis-server --requirepass "123456"

Nacos 2.1.1

通过简易版方式安装,主打的就是有问题铲了重装。

docker run \
-d -p 8848:8848 \
-p 9848:9848 \
--name nacos2 \
-e MODE=standalone \
-e TIME_ZONE='Asia/Shanghai' \
nacos/nacos-server:v2.1.1

运行成功,稍等几秒启动时间,浏览器输入 http://localhost:8848/nacos/index.html 查看控制台。