温馨提示×

centos怎样导入数据库备份

小樊
37
2026-09-24 16:03:25
栏目: 智能运维

在 CentOS 上“导入数据库备份”通常是指把 .sql 文件(或压缩后的 .sql.gz)恢复到 MySQL / MariaDB 数据库中。下面按常见情况说明。


一、前提准备

1. 登录 CentOS 服务器

ssh root@服务器IP

2. 确认数据库类型

mysql -V
# 或
mariadb -V

二、导入 MySQL / MariaDB 备份(最常用)

情况 1:已有数据库(导入到已有库)

mysql -u 用户名 -p 数据库名 < backup.sql

示例:

mysql -u root -p mydb < /root/mydb.sql

执行后会提示输入密码。


情况 2:需要先创建数据库

mysql -u root -p
CREATE DATABASE mydb CHARACTER SET utf8mb4;
EXIT;

然后再导入:

mysql -u root -p mydb < /root/mydb.sql

情况 3:导入压缩的 SQL 备份(.sql.gz)

gunzip < backup.sql.gz | mysql -u root -p mydb

三、使用 source 命令导入(适合大文件)

mysql -u root -p
USE mydb;
SOURCE /root/mydb.sql;

四、导入到指定 IP 或端口的数据库

mysql -h 127.0.0.1 -P 3306 -u root -p mydb < backup.sql

五、常见错误及解决

1. 提示无权访问

GRANT ALL PRIVILEGES ON mydb.* TO 'user'@'localhost';
FLUSH PRIVILEGES;

2. 文件太大导入慢

修改 /etc/my.cnf:

[mysqld]
max_allowed_packet=256M

重启:

systemctl restart mysqld

3. 忘记 root 密码

可进入安全模式重置(如需要我可以单独写)。


六、如果是其他数据库

  • PostgreSQL
psql -U user -d dbname < backup.sql
  • MongoDB
mongorestore --db mydb /path/to/backup

如果你能告诉我:

  • 数据库类型(MySQL / MariaDB / PG / Mongo)
  • 备份文件格式(.sql / .sql.gz / 文件夹)
  • 是否是新服务器

我可以给你更精确的一条命令。

0 踩