我的知识记录

数据库连接错误_备份与还原

数据库连接错误时分清是数据库服务问题还是网站配置问题。所有网站都连不上是数据库服务问题;只有一个网站连不上是该网站的数据库配置或权限问题。用 mysql -u root -p 测试 root 能否登录,区分层级。

密码重置:忘记 MySQL root 密码,停服务 → mysqld_safe --skip-grant-tables & 启动 → mysql -u root 无密码登录 → UPDATE mysql.user SET authentication_string=PASSWORD('新密码') WHERE User='root'; → FLUSH PRIVILEGES; → 重启服务。MySQL 5.7和8.0语法略有不同。

参考(MySQL管理命令): ``` # 服务管理 systemctl status mysqld systemctl start mysqld systemctl restart mysqld systemctl enable mysqld

# 连接测试 mysql -u用户名 -p密码 -e "SHOW DATABASES;" mysql -u用户名 -p密码 -h 127.0.0.1 -P 3306

# 备份 mysqldump -u用户名 -p密码 库名 > backup_库名.sql # 压缩备份 mysqldump -u用户名 -p密码 库名 | gzip > backup.sql.gz

# 还原 mysql -u用户名 -p密码 库名 < backup_库名.sql gunzip < backup.sql.gz | mysql -u用户名 -p密码 库名

# 错误日志 tail -50 /var/log/mysqld.log tail -50 /var/log/mariadb/mariadb.log

# 慢查询 mysql -u root -p -e "SHOW VARIABLES LIKE 'slow_query%';" mysql -u root -p -e "SHOW PROCESSLIST;" ```

数据库不存在是数据库连接错误的常见原因。服务未启动 systemctl start;密码错误重置密码;端口不对改配置或连接串;数据库不存在创建库;表前缀错修正配置;字符集不匹配统一 UTF-8;磁盘满清理日志和备份;连接数超限增大 max_connections;表损坏 REPAIR TABLE。

MySQL 常见错误速查:ERROR 1045 (28000) 密码错或权限错;ERROR 2002 (HY000) 服务未启动或 socket 错;ERROR 1049 (42000) 数据库不存在;ERROR 1146 (42S02) 表不存在(表前缀错);ERROR 1064 (42000) SQL 语法错;ERROR 2003端口或防火墙;ERROR 1205锁等待超时。

数据库连接错误_备份与还原

标签:

更新时间:2026-09-01 13:47:15

上一篇:Linux只读文件被docker容器内进程修改的隔离防护方法_网站安全运维实战指南

下一篇:网站禁用PUT DELETE方法防止未授权文件操作配置_网站安全运维实战指南