通过腾讯云服务搭建两个实例(Server 和 Client),实现两个实例之间的SSH免密登录,并在这两个实例上安装MySQL数据库。在Server实例上创建数据库和用户,然后在Client实例上远程连接至Server实例的MySQL数据库.
实验步骤
购买云服务实例
在腾讯云上购买两个实例,确保实例的配置为2核CPU、2GB内存,操作系统选择Ubuntu 20.04。分别设置实例的名称为master和slave1,并在安全组中添加规则允许MySQL(3306)端口的访问。
前置软件安装
在两个实例上执行以下命令以更新软件包列表并安装必要的软件:
1 | sudo apt-get update |
配置主机名和主机映射
在Server和Client实例上,分别配置主机名和主机映射,以便在网络中方便地识别和访问彼此。用内网IP,降低使用成本。
配置主机映射(
/etc/hosts
):添加或确认主机IP与名称的映射关系。1
sudo vim /etc/hosts
配置主机名(
/etc/hostname
):设置或修改实例的主机名,使其更具标识性。1
sudo vim /etc/hostname
并分别为master和slave1实例输入它们的名称。
SSH免密登录配置
在Server端生成公私钥对,并将公钥内容添加至
~/.ssh/authorized_keys
文件中,实现免密登录:1
2ssh-keygen -t rsa -c "YOUR_EMAIL"
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys验证SSH免密登录,尝试使用内网和公网IP地址登录Server自身,确保免密登录配置成功。
将Server的公私钥对及授权文件传输至Client,实现Client对Server免密登录及Server对Client免密登录:
1
scp ~/.ssh/id_rsa ~/.ssh/id_rsa.pub ~/.ssh/authorized_keys ubuntu@CLIENT_INTERNAL_IP:~/.ssh/
实验结果:
创建数据库并修改配置文件
下载MySQL
1
sudo apt-get install mysql-server
修改MySQL配置:更改
/etc/mysql/mysql.conf.d/mysqld.cnf
中的bind-address
值为0.0.0.0
,允许外部访问。1
sudo vim /etc/mysql/mysql.conf.d/mysqld.cnf
重启MySQL服务以应用更改:
1
sudo service mysql restart
创建数据库和用户:登录至MySQL服务,创建名为
zhguichen
的数据库,以及允许slave1远程访问的用户:1
2
3
4CREATE DATABASE zhguichen;
CREATE USER 'slave1'@'CLIENT_INTERNAL_IP' IDENTIFIED BY 'password';
GRANT ALL ON *.* TO 'client'@'CLIENT_INTERNAL_IP';
FLUSH PRIVILEGES;
在Client端验证数据库连接
使用以下命令从Client端连接至Server端的MySQL数据库,验证配置是否成功:
1 | mysql -h SERVER_INTERNAL_IP -u slave1 -p |