Docker搭建TiDB简单集群环境

1.预备环境

环境说明:CentOS7 + Docker服务 +MySQL5.7

Docker 环境搭建可参考:https://www.jianshu.com/p/63dd98e738d1


2.拉取 TiDB 的最新 Docker 镜像

docker pull pingcap/tidb:latest

docker pull pingcap/tikv:latest

docker pull pingcap/pd:latest


3.主机信息以及TiDB 集群信息:

Docker搭建TiDB简单集群环境_第1张图片

4.启动 PD

登录 host1 执行:

docker run -d --name pd1 \

-p 2379:2379 \

-p 2380:2380 \

-v /etc/localtime:/etc/localtime:ro \

-v /root/docker/tidb/data:/data\pingcap/pd:latest \

-v /root/docker/tidb/conf/pd.toml:/pd.toml:ro \

-v /root/docker/tidb/log/pd.log:/log/pd.log \

--name="pd1" \

--data-dir="/data/pd1" \

--client-urls="http://0.0.0.0:2379" \

--advertise-client-urls="http://192.168.1.69:2379" \

--peer-urls="http://0.0.0.0:2380" \

--advertise-peer-urls="http://192.168.1.69:2380" \

--initial-cluster="pd1=http://192.168.1.69:2380" \

--config="/pd.toml" \

--log-file="/log/pd.log"

OR 执行:

docker run -d --name pd1 -p 2379:2379 -p 2380:2380 -v /etc/localtime:/etc/localtime:ro -v /root/docker/tidb/pd/data:/data  -v /root/docker/tidb/conf/pd.toml:/pd.toml:ro pingcap/pd:latest --name="pd1" --data-dir="/data/pd1" --client-urls="http://0.0.0.0:2379" --advertise-client-urls="http://192.168.1.69:2379" --peer-urls="http://0.0.0.0:2380" --advertise-peer-urls="http://192.168.1.69:2380" --initial-cluster="pd1=http://192.168.1.69:2380"  --config="/pd.toml" --log-file="/log/pd.log"

5.启动 TiKV

登录 host1 执行:

docker run -d --name tikv1 \

-p 20160:20160 \

--ulimit nofile=1000000:1000000 \

-v /etc/localtime:/etc/localtime:ro \

-v /root/docker/tidb/kv/data:/data \

-v /root/docker/tidb/conf/tikv.toml:/tikv.toml:ro \

-v /root/docker/tidb/log/tikv.log:/log/tikv.log \

pingcap/tikv:latest \

--addr="0.0.0.0:20160" \

--advertise-addr="192.168.1.69:20160" \

--data-dir="/data/tikv1" \

--pd="192.168.1.69:2379" \

--config="/tikv.toml" \

--log-file="/log/tikv.log"

OR 执行:

docker run -d --name tikv1 -p 20160:20160 --ulimit nofile=1000000:1000000 -v /etc/localtime:/etc/localtime:ro -v /root/docker/tidb/kv/data:/data -v /root/docker/tidb/conf/tikv.toml:/tikv.toml:ro -v /root/docker/tidb/log/tikv.log:/log/tikv.log pingcap/tikv:latest --addr="0.0.0.0:20160" --advertise-addr="192.168.1.69:20160" --data-dir="/data/tikv1" --pd="192.168.1.69:2379"  --config="/tikv.toml" --log-file="/log/tikv.log"

6.启动TiDB

docker run -d --name tidb \

-p4000:4000 \

-p10080:10080 \

-v /etc/localtime:/etc/localtime:ro \

-v /root/docker/tidb/log/tidb.log:/log/tidb.log \

pingcap/tidb:latest \

--store=tikv \

--path="192.168.1.69:2379" \

--log-file="/log/tidb.log"

OR 执行:

docker run -d --name tidb -p4000:4000 -p10080:10080 -v /etc/localtime:/etc/localtime:ro -v /root/docker/tidb/log/tidb.log:/log/tidb.log pingcap/tidb:latest --store=tikv --path="192.168.1.69:2379" --log-file="/log/tidb.log" 

7.使用 MySQL 标准客户端连接 TiDB 测试

登录 host1 并确保已安装 MySQL 命令行客户端,执行:

mysql -h 127.0.0.1 -P 4000 -u root -D test

设置数据库密码以及为root添加远程连接的能力

(1)mysql重置密码并为root添加远程连接的能力。链接密码为 “root”(不包括双引号)

    mysql > use mysql;

    mysql > update user set password=password('root') where user='root';

    mysql > flush privileges;

    mysql > exit;

(2)重启mysql服务生效

    service mysqld restart

本文参考自:https://pingcap.com/docs-cn/v3.0/how-to/deploy/orchestrated/docker/

你可能感兴趣的:(Docker搭建TiDB简单集群环境)