利用逻辑备份修复误操作的库

案例-以k1库为例

bash 复制代码
#查看备份
[kingbase@node1 ~]$ ls -lth /dbdata/backup/dumpbackup/k1/
总用量 6.5M
-rw-rw-r-- 1 kingbase kingbase  177 4月   2 14:00 backup_log_k1_2026040214.tar.gz
-rw-rw-r-- 1 kingbase kingbase 6.5M 4月   2 14:00 k1_2026040214.tar.gz

#查看数据库的信息
test=# \l+
                                                                    数据库列表
   名称    | 拥有者 | 字元编码 |  校对规则   |    Ctype    |     存取权限      |  大小  |   表空间    |                    描述
-----------+--------+----------+-------------+-------------+-------------------+--------+-------------+--------------------------------------------
 k1        | system | UTF8     | zh_CN.UTF-8 | zh_CN.UTF-8 |                   | 369 MB | sys_default |

#我是直接修改的原库名,再进行创建,并没有删除原库
select sys_terminate_backend(pid)
from sys_stat_activity
where datname = 'k1';

alter database k1 rename to k11;


#新建一个同名的库,注意extension要一样(查看方式SELECT * FROM sys_extension;)。
create database k1;


#将数据库文件拷贝的其他目录,我是新建的一个
[kingbase@node1 ~]$ mkdir /home/kingbase/kdb_install/database_bak
[kingbase@node1 ~]$ cp /dbdata/backup/dumpbackup/k1/k1_2026040214.tar.gz /home/kingbase/kdb_install/database_bak/


#在新目录下解压
[kingbase@node1 ~]$ cd /home/kingbase/kdb_install/database_bak/
[kingbase@node1 database_bak]$ tar xf k1_2026040214.tar.gz
[kingbase@node1 database_bak]$ ls
k1_2026040214.dmp  k1_2026040214.tar.gz


[kingbase@node1 ~]$ sys_restore -U system -d k1 /home/kingbase/kdb_install/database_bak/k1_2026040214.dmp

test=# select sys_size_pretty(sys_database_size('k1'));
 sys_size_pretty
-----------------
 369 MB
(1 行记录)

test=# select sys_size_pretty(sys_database_size('k11'));
 sys_size_pretty
-----------------
 369 MB
(1 行记录)
相关推荐
weixin_568996061 天前
mysql如何配置大页内存_mysql large-pages开启方法
jvm·数据库·python
HHHHH1010HHHHH1 天前
HTML怎么创建评论区域_HTML嵌套评论语义结构【详解】
jvm·数据库·python
Absurd5871 天前
C#怎么模拟键盘按键输入_C#如何实现自动化脚本【教程】
jvm·数据库·python
Chasing__Dreams1 天前
Redis--基础知识点--29--Redis瓶颈
数据库·redis·php
amIZ AUSK1 天前
实操解决Navicat连接postgresql时出现‘datlastsysoid does not exist‘报错的问题
数据库·postgresql
gmaajt1 天前
Golang怎么读取环境变量_Golang如何用os.Getenv获取系统环境变量【基础】
jvm·数据库·python
2601_949194261 天前
Redis的安装教程(Windows+Linux)【超详细】
linux·数据库·redis
傻啦嘿哟1 天前
Python 文件批量处理:重命名/备份/同步运维实战指南
linux·数据库·github
m0_596406371 天前
CSS复杂组件如何拆解_使用Sass将组件逻辑细化为小文件
jvm·数据库·python
cyber_两只龙宝1 天前
【Oracle】 Oracle之SQL的子查询
linux·运维·数据库·sql·云原生·oracle