python定制脚本安装mysql socket文件存在无法连接

自己定制一个python脚本可以一键安装mysql实例,

遇到mysql socket文件已经创建成功但是无法通过socket文件进行连接

报错原因

python 复制代码
mysql: [Warning] Using a password on the command line interface can be insecure.
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/storage/mysql3310/mysql3310.sock' (2)

程序需要停歇几秒通过socket连接才能成功

通过观察日志socket文件生成日期比较早

powershell 复制代码
2024-10-17 15:59:40,953 - ssh_client - WARNING - will exit host
ssh 192.168.56.102 ps -ef|grep mysql|grep 3310
0 root      8705     1  0 15:59 ?        00:00:00 /bin/sh /usr/local/mysql/bin/mysqld_safe --defaults-file=/etc/my3310.cnf
root      8989  8705  0 15:59 ?        00:00:00 /usr/local/mysql/bin/mysqld --defaults-file=/etc/my3310.cnf --basedir=/usr/local/mysql --datadir=/storage/mysql3310 --plugin-dir=/usr/local/mysql/lib/plugin --user=mysql --log-error=error.log --pid-file=mysql02.pid --socket=/storage/mysql3310/mysql3310.sock --port=3310
ssh 192.168.56.102 ps -ef|grep mysql|grep 3310|wc -l
2024-10-17 15:59:41,338 - __main__ - INFO - mysql 3310 is started,next step is reset root password

mysql启动日志中显示可以连接时间比较晚

powershell 复制代码
2024-10-17T15:59:41.349054+08:00 0 [Warning] [MY-011068] [Server] The syntax 'expire-logs-days' is deprecated and will be remo
ved in a future release. Please use binlog_expire_logs_seconds instead.
2024-10-17T15:59:41.349145+08:00 0 [System] [MY-010116] [Server] /usr/local/mysql/bin/mysqld (mysqld 8.0.22) starting as proce
ss 8989
2024-10-17T15:59:41.355519+08:00 1 [System] [MY-013576] [InnoDB] InnoDB initialization has started.
2024-10-17T15:59:41.899082+08:00 1 [System] [MY-013577] [InnoDB] InnoDB initialization has ended.
2024-10-17T15:59:42.049942+08:00 0 [System] [MY-011323] [Server] X Plugin ready for connections. Bind-address: '::' port: 3306
0, socket: /tmp/mysqlx.sock
2024-10-17T15:59:42.291311+08:00 0 [Warning] [MY-010068] [Server] CA certificate ca.pem is self signed.
2024-10-17T15:59:42.291481+08:00 0 [System] [MY-013602] [Server] Channel mysql_main configured to support TLS. Encrypted conne
ctions are now supported for this channel.
2024-10-17T15:59:42.313666+08:00 0 [System] [MY-010931] [Server] /usr/local/mysql/bin/mysqld: ready for connections. Version: 
'8.0.22'  socket: '/storage/mysql3310/mysql3310.sock'  port: 3310  MySQL Community Server - GPL.

所以mysql启动之后如果通过程序立即连接是可能出现通过socket无法连接情况出现

相关推荐
CTA终结者9 小时前
期货开仓前保证金够吗:get_account 可用与占用字段对照
python·区块链
开源量化GO9 小时前
夜盘白盘衔接几分钟误下单:天勤交易时段与行情过滤
python·区块链
AOwhisky9 小时前
MySQL 学习笔记(第六期):MySQL 备份与恢复
运维·数据库·笔记·学习·mysql·云计算
辣椒思密达9 小时前
Python公开数据采集实战:如何解决请求高频拦截与Session会话中断问题
开发语言·python
j_xxx404_10 小时前
MySQL表操作硬核解析:从 CREATE TABLE 到磁盘文件、ALTER TABLE 与 DDL 风险
运维·服务器·数据库·c++·mysql·adb·ai
Albart57510 小时前
Python 实战教程:用 30 分钟学会解决真实问题
开发语言·python
Fanta丶10 小时前
19.Mysql覆盖索引、前缀索引
mysql
2301_7736436210 小时前
ceph池
开发语言·ceph·python
极客笔记Jack11 小时前
Scanpy AnnData 对象深度解析:高效操作数据结构的10个技巧
python
梦想的旅途211 小时前
企业微信API实现外部群消息异步推送的技术架构与实践
mysql·架构·企业微信