mysql数据库192.168.10.1 k8s master 192.168.10.226
-
修改 MySQL 配置文件:
-
找到 MySQL 的配置文件
my.cnf
(在 Linux 系统中通常位于/etc/mysql/my.cnf
或/etc/my.cnf
,在 Windows 系统中通常位于 MySQL 安装目录下)。 -
找到
[mysqld]
部分,确保有以下行:
bind-address = 0.0.0.0
-
这将允许 MySQL 接受来自任何 IP 地址的连接。
-
-
创建用户并授权:
-
登录到 MySQL:
mysql -u root -p
-
创建一个新用户并授予远程访问权限(将
username
和
password
替换为你想要的用户名和密码):
CREATE USER 'username'@'%' IDENTIFIED BY 'password'; GRANT ALL PRIVILEGES ON *.* TO 'username'@'%' WITH GRANT OPTION; FLUSH PRIVILEGES;
-
-
防火墙设置:
-
确保你的防火墙允许 MySQL 的默认端口(3306)通过。可以使用以下命令(以
ufw
为例):
sudo ufw allow 3306
-
-
重启 MySQL 服务:
-
修改配置后,需要重启 MySQL 服务以使更改生效:
sudo systemctl restart mysql
-
-
远程连接:
- 使用 MySQL 客户端或其他数据库管理工具(如 MySQL Workbench)进行远程连接,输入服务器的 IP 地址、用户名和密码。
完成以上步骤后,你应该能够成功远程连接到 MySQL 5.7 数据库。如果遇到问题,请检查配置和防火墙设置。
修改密码策略(可选)
如果你希望放宽密码策略,可以通过修改 validate_password
插件的配置来实现。以下是步骤:
-
登录到 MySQL:
mysql -u root -p
-
查看当前的密码策略:
SHOW VARIABLES LIKE 'validate_password%';
-
修改密码策略(例如,设置为较低的强度):
SET GLOBAL validate_password_policy = LOW;
-
你也可以调整密码长度要求:
SET GLOBAL validate_password_length = 6;
3. 创建用户
在调整密码策略后,你可以再次尝试创建用户。确保使用符合新策略的密码。
4. 重新连接并测试
创建用户后,记得刷新权限:
FLUSH PRIVILEGES;
然后尝试使用新用户进行远程连接。
注意事项
- 修改密码策略可能会降低数据库的安全性,建议在生产环境中谨慎使用。
- 如果需要恢复默认设置,可以将
validate_password.policy
设置回MEDIUM
或STRONG
。
容器内登录集群外mysql
echo -n "kunkun" |base 64
echo -n "wzq314914" |base 64
cat secret-mysql.yaml
apiVersion: v1
kind: Secret
metadata:
name: mysql-secret
type: Opaque
data:
mysql-password: d3pxMzE0OTE0
mysql-user: a3Vua3Vu
创建pod
cat pod-mysql5.7.yaml
apiVersion: v1
kind: Pod
metadata:
name: my-mysql5.7-pod
spec:
containers:
- name: mycontainer
image: registry.cn-hangzhou.aliyuncs.com/6aliyun6/yun:my-centos7
env:
- name: MYSQL_HOST
value: "192.168.10.1"
- name: MYSQL_PORT
value: "3306"
- name: MYSQL_USER
valueFrom:
secretKeyRef:
name: mysql-secret
key: mysql-user
- name: MYSQL_PASSWORD
valueFrom:
secretKeyRef:
name: mysql-secret
key: mysql-password
command: ["/bin/bash"]
args: ["-c", "while true; do echo hello; sleep 10; done"]
kubectl exec -it my-mysql5.7-pod -- bash
kubectl cp repo rongqi:/etc/yum.repos.d
yum install mysql
mysql -u$MYSQL_USER -p$MYSQL_PASSWORD -h$MYSQL_HOST