centos中sqladmin怎样恢复
导读:先明确 sqladmin 的含义与恢复目标 在 CentOS 环境中,很多场景里 sqladmin 指的是 phpMyAdmin(一个通过 Web 管理 MySQL/MariaDB 的工具)。此时“恢复”通常指把数据库恢复到 phpMyA...
先明确 sqladmin 的含义与恢复目标
- 在 CentOS 环境中,很多场景里 sqladmin 指的是 phpMyAdmin(一个通过 Web 管理 MySQL/MariaDB 的工具)。此时“恢复”通常指把数据库恢复到 phpMyAdmin 可访问的状态,或直接用命令行恢复数据。
- 也可能是你自建的名为 sqladmin 的数据库或用户,需要恢复该库/该账号。
- 若你实际使用的是 Microsoft SQL Server on Linux(在 CentOS 上),则“恢复”多指用 .bak 文件在 SQL Server 实例中执行还原。
下文按这三类分别给出可执行步骤。
场景一 使用 phpMyAdmin 时的恢复
- 准备备份文件
- 常见为 .sql(逻辑备份,mysqldump 生成)或 .zip/.gz(压缩的 .sql)。
- 通过 Web 恢复(适合小中型库)
- 将备份上传到服务器可访问目录,在 phpMyAdmin 中进入目标库(或先新建同名空库),选择 Import,选择备份文件并执行。
- 通过命令行恢复(更通用、适合大文件)
- 登录数据库:mysql -u root -p
- 如需新建库:CREATE DATABASE IF NOT EXISTS your_db CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
- 恢复:mysql -u root -p your_db < /path/backup.sql
- 权限与连接检查
- 若 phpMyAdmin 报连接失败,确认 mysqld 运行、端口开放、phpMyAdmin 配置中的 $cfg[‘Servers’][$i][‘host’]、用户权限与密码正确。
以上流程与 phpMyAdmin 的部署和使用方式一致,备份/恢复建议配合 mysqldump 定期演练。
- 若 phpMyAdmin 报连接失败,确认 mysqld 运行、端口开放、phpMyAdmin 配置中的 $cfg[‘Servers’][$i][‘host’]、用户权限与密码正确。
场景二 恢复名为 sqladmin 的数据库或用户
- 恢复数据库(逻辑备份)
- 确认备份是 .sql 或压缩包:file /path/backup.sql.gz
- 解压(如需要):gunzip backup.sql.gz
- 建库(如备份不含建库语句):CREATE DATABASE IF NOT EXISTS sqladmin CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
- 导入:mysql -u root -p sqladmin < /path/backup.sql
- 恢复或重置 sqladmin 用户
- 若仅丢失账号或忘记密码:
- 登录 MySQL:mysql -u root -p
- 创建或重设用户与权限:
- CREATE USER IF NOT EXISTS ‘sqladmin’@‘localhost’ IDENTIFIED BY ‘StrongPass!’;
- GRANT ALL PRIVILEGES ON
sqladmin.* TO ‘sqladmin’@‘localhost’; - 如需远程:CREATE USER IF NOT EXISTS ‘sqladmin’@‘%’ IDENTIFIED BY ‘StrongPass!’;
GRANT ALL PRIVILEGES ON
sqladmin.* TO ‘sqladmin’@‘%’; - FLUSH PRIVILEGES;
- 若仅丢失账号或忘记密码:
- 验证
- 登录验证:mysql -u sqladmin -p -h 127.0.0.1
- 或在 phpMyAdmin 中检查库与权限是否生效。
上述用户与权限操作与常见的 phpMyAdmin 部署步骤一致。
场景三 使用物理备份工具 XtraBackup 的全量恢复(InnoDB)
- 适用前提
- 你之前用 Percona XtraBackup 做过物理备份(如:xtrabackup --backup …),现在需要把数据目录完整还原。
- 步骤
- 停库:mysqladmin -uroot -p shutdown
- 准备备份:xtrabackup --prepare --target-dir=/backups/full_backup
- 清空数据目录(谨慎!):rm -rf /var/lib/mysql/*
- 拷贝回数据:xtrabackup --copy-back --target-dir=/backups/full_backup
- 修正权限:chown -R mysql:mysql /var/lib/mysql
- 启动:/usr/local/mysql/bin/mysqld_safe --defaults-file=/etc/my.cnf --user=mysql &
- 登录校验:mysql -uroot -p
- 重要提示
- 路径(如 /var/lib/mysql、配置文件 /etc/my.cnf)以你的实际环境为准;恢复前务必做好完整备份与演练。
以上流程为 XtraBackup 在 CentOS 上的标准物理恢复做法。
- 路径(如 /var/lib/mysql、配置文件 /etc/my.cnf)以你的实际环境为准;恢复前务必做好完整备份与演练。
场景四 在 CentOS 上恢复 Microsoft SQL Server 数据库
- 准备与传输
- 在 Windows 上用 SSMS 生成 .bak:
- BACKUP DATABASE [YourDB] TO DISK = N’D:\SQLBackups\YourDB.bak’ WITH COPY_ONLY, STATS=5
- 用 WinSCP/SFTP 将 .bak 传到 CentOS,例如 /SQLServer/SQLBackup/YourDB.bak。
- 在 Windows 上用 SSMS 生成 .bak:
- 在 Linux 上的 SQL Server 中还原
- 连接实例:sqlcmd -S localhost -U SA -P ‘YourStrong@Pass’
- 执行还原(示例,注意文件路径与逻辑名):
- USE [master]
- RESTORE DATABASE [YourDB] FROM DISK = N’/SQLServer/SQLBackup/YourDB.bak’
WITH FILE = 1,
MOVE N’YourDB_Data’ TO N’/var/opt/mssql/data/YourDB.mdf’,
MOVE N’YourDB_Log’ TO N’/var/opt/mssql/data/YourDB_log.ldf’,
STATS = 5;
- 校验
- 在 SSMS 或 sqlcmd 中检查数据库状态与对象是否完整。
以上流程适用于在 CentOS 上运行的 SQL Server 的 .bak 还原。
- 在 SSMS 或 sqlcmd 中检查数据库状态与对象是否完整。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: centos中sqladmin怎样恢复
本文地址: https://pptw.com/jishu/785982.html
