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无法连接情况出现

相关推荐
yunhuibin5 分钟前
GoogLeNet学习
人工智能·python·深度学习·神经网络·学习
易辰君1 小时前
【Python爬虫实战】正则:中文匹配与贪婪非贪婪模式详解
开发语言·爬虫·python
秀儿还能再秀1 小时前
正则表达式核心语法 + Python的 re 库中常用方法
python·正则表达式
xcLeigh1 小时前
Python入门:Python3 正则表达式全面学习教程
python·学习·正则表达式·教程·python3
Anastasiozzzz2 小时前
阿亮随手记:MySQL移除查询缓存、子查询优化深分页、自增主键溢出、索引失效
数据库·mysql·缓存
多恩Stone2 小时前
【C++ debug】在 VS Code 中无 Attach 调试 Python 调用的 C++ 扩展
开发语言·c++·python
XW01059992 小时前
4-11判断素数
前端·python·算法·素数
深蓝电商API2 小时前
爬虫增量更新:基于时间戳与哈希去重
爬虫·python
两万五千个小时3 小时前
构建mini Claude Code:06 - Agent 如何「战略性遗忘」(上下文压缩)
人工智能·python
两万五千个小时3 小时前
构建mini Claude Code:12 - 从「文件冲突」到「分身协作」:Worktree 如何让多 Agent 安全并行
人工智能·python·架构