电脑环境:windows10、mysql 5.7
一. 在本地配置连接TiDB Cloud
注册 TiDB Cloud: 打开浏览器,访问 https://tidbcloud.com,点击 Sign up 完成注册并登录。
一定要记住这里的密码,后面的连接密码也是此密码(如果需要重设,也都设置为此密码);创建测试集群: 为 Cluster 取名、设置密码、选择云供应商(默认aws)、选择区域(选择Oregon (us-west-2)),点击下方的 Submit,观察创建步骤,等待大约 5-15 分钟,直到 Status 从 Creating 变为 Normal;
点击右侧的 Connect,选择 Web SQL Shell,然后点击 >_ Open SQL Shell;
进入云命令控制行,有时可能因为网络问题无法加载,刷新或者退出重登即可;
输入密码。注意:这里的密码采用了隐式方法,输入时我们是不可见的(可能为了安全),一次性输入按enter回车键即可,报错就重新输入;输入成功如下图;
可以输入
select version();
等指令,注意:它是以分号为结束符,只有遇到分号才开始做出判断;
至此,在TiDB Cloud的操作完成。
接着,是如何从本地终端新开启一个 session 以访问 TiDB Cloud 中的 TiDB。从本地终端新开启一个 session 以访问 TiDB Cloud 中的 TiDB;
点击 TiDB Cloud 集群页面上的 Connect;
在 Connect to TiDB 页面里的 Standard Connection 中,点击 Add Your Current IP Address(添加一个0.0.0.0/0地址即可,代表任何地方都能访问,如果已经有,就不必添加);
复制列在 Step 2: Connect with a SQL client 下的命令,然后打开cmd命令行,输入该
指令,输入后遇到过以下问题:
① 显示mysql unknown variables.
此报错的原因是以前动过mysql的my.ini文件,设置的default-time-zone=’08:00’
位置不对,反正出现诸如此类未知变量的报错,一定是该文件出问题了。注意:该文件可能出现在两个位置,C:\Program Files\MySQL\MySQL Server 5.7和C:\ProgramData\MySQL\MySQL Server 5.7
,都要进行相应的检查。还有,虽然这里是乱码,是因为cmd的编码与mysql的编码不一致导致的,并不造成影响,即人看不懂,但是机器看的懂。
② 直接输入复制的指令,依然报错。
需要稍加修改,把引号删去,然后指令后面添加–ssl-mode=DISABLED。所以我的最终的指令是
mysql --connect-timeout 15 -u 3BKEScjM22QgNrH.root -h gateway01.us-west-2.prod.aws.tidbcloud.com -P 4000 -D test -p --ssl-mode=DISABLED
,据此修改即可。然后输入的密码是云上的密码,不是自己mysql数据库的,切记。
运行成功截图如下。
- 查看数据库版本,随机数和当前时间;
select connection_id(), version(), rand(), now();
运行如下:
完成。