mysql锁报错

错误如下

Lock wait timeout exceeded; try restarting transaction ; Lock wait timeout

最后发现是因为本地有debug卡住导致的,停掉即可

如果是发生死锁,可以通过以下命令差锁,干掉即可

select * from information_schema.innodb_trx

看trx_status字段为LOCK WAIT的
复制trx_id

kill trx_id

如果trx_status为RUNNING,就不用管,表示正在执行的事务,没有锁

### MySQL 安装过程中的常见报错及其解决方案 #### 1. **The service already exists!** 当执行 `mysqld --install` 命令时,如果出现“The service already exists!”的错误提示,则表示当前系统中已经存在名为“MySQL”的服务[^1]。 解决方法: - 使用以下命令卸载已存在的服务: ```bash sc delete MySQL ``` - 卸载完成后重新尝试安装服务: ```bash mysqld --install ``` --- #### 2. **Linux 中 `/etc/my.cnf` 配置错误导致启动失败** 在 Linux 系统中,如果 `/etc/my.cnf` 文件配置不正确,在执行 `systemctl start mysqld` 启动 MySQL 服务时会返回 failed 错误[^2]。即使修正了该文件并保存退出,可能仍然无法正常启动。 原因分析: - 修改后的配置未被加载到内存中。 - 存在残留的服务状态或缓存数据。 解决方法: - 清除旧的服务状态: ```bash systemctl reset-failed mysqld.service ``` - 删除临时目录下的日志和文件(如果有): ```bash rm -rf /var/lib/mysql/*.pid rm -rf /var/run/mysqld/* ``` - 尝试重启服务: ```bash systemctl daemon-reload && systemctl restart mysqld ``` --- #### 3. **MySQL 报错 2003** MySQL 报错 2003 的主要原因有两种可能性[^3]: ##### (a) **MySQL 服务未启动** 确认 MySQL 是否正在运行: ```bash netstat -tuln | grep 3306 ``` 如果没有监听端口 3306,则说明服务尚未启动。可以手动启动服务: ```bash sudo service mysql start ``` ##### (b) **端口号设置错误** 默认情况下,MySQL 使用的是 3306 端口。如果更改过端口号或者防火墙阻止访问,请检查以下内容: - 查看 MySQL 配置文件 (`my.cnf`) 中指定的端口号是否正确: ```ini [mysqld] port=3306 ``` - 如果使用自定义端口,请确保客户端连接时指定了对应的端口号。 --- #### 4. **MySQL 安装报错 2502 和 2503** 此类错误通常发生在 Windows 平台上的家庭版操作系统中,主要原因是权限不足[^4]。以下是几种可行的解决方案: ##### 方法一:通过管理员权限命令行安装 打开具有管理员权限的 CMD 或 PowerShell 终端,执行以下命令完成安装: ```cmd msiexec /package "D:\soft_backup\project\数据库\mysql-5.5.62-winx64.msi" ``` 注意替换路径为实际 MSI 文件的位置。 ##### 方法二:利用任务管理器以管理员身份运行安装程序 按下 Ctrl+Alt+Delete 打开任务管理器 -> 新建任务 -> 输入完整的安装包路径,并勾选“以管理员身份运行”。 ##### 方法三:修改组策略强制提升权限 按 Win+R 调出运行窗口,输入 `gpedit.msc` 进入本地组策略编辑器 -> 用户配置 -> 管理模板 -> Windows 组件 -> Windows Installer -> 设置始终以提升的权限进行安装选项为“已启用”。 --- ### 总结 以上列举了几种常见的 MySQL 安装及启动过程中可能出现的错误以及相应的处理办法。具体操作需根据实际情况调整参数或环境变量。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值