火鸟数据库的shadow,即实时镜像。

主库发生变化,shadow也跟随变化,防止任何意外造成主库损坏无法使用,当然shadow可以有多个。

1、创建shadow的准备:修改Firebird.conf配置文件,追加一个数据库目录 DatabaseAccess = Restrict db; shadow

我这里安装目录下db目录是数据库主目录,shadow目录作为镜像目录。这两个目录是平级的,不存在shadow目录必须放镜像的误导,

只是目录命名为了放置镜像数据库。因为镜像shadow数据库不能随便指定目录。

2、创建shadow镜像的脚本: create shadow 'C:\Program Files\Firebird\Firebird_3_0\shadow\test.sd1';

提交事务后,会在shadow目录下生成 test.sd1的镜像数据库文件,且和主库保持同步。

可以根据需要生成多个镜像库。

3、确认镜像库是激活状态:

打开isql命令行,连接test数据库: connect test user sysdba password ;

连接成功后,输入命令显示当前数据库的信息: show database; 即显示以下,则说明镜像库test.sd1正常。

Database: test
Owner: SYSDBA
Shadow : "C:\PROGRAM FILES\FIREBIRD\FIREBIRD_3_0\SHADOW\TEST.SD1" auto
PAGE_SIZE
Number of DB pages allocated =
Number of DB pages used =
Number of DB pages free =
Sweep interval =
Forced Writes are ON
Transaction - oldest =
Transaction - oldest active =
Transaction - oldest snapshot =
Transaction - Next =
ODS = 12.0
Database not encrypted
Default Character set: UTF8

4、删除其中一个shadow镜像,若不能直接删除,提示进程占用,重启Firebird服务,或关掉服务,直接将镜像文件删除即可。

再次用isql命令查看,镜像已经删除。

5、将镜像库shadow恢复设定为可连接活动库。假设主库损坏,关掉Firebird服务,将主库删掉,再将shadow镜像库重命名为原来库名称,

再次开启Firebird服务即可使用。这时防止意外,需要再次为其设定shadow镜像库。

最后,根据官方文档,在将镜像库设定为生产库时,需要命令 gfix -ac[tivate] <shadow_file_name> ,即 gfix -ac test.sd1

这样做可以,不操作也可,估计是以前版本必须这样做,我测试版本是V3.0.4 。

若执行了 gfix -ac test.sd1 命令,即原来正常的镜像库test.sd1就取消去shadow身份了,再次查看test库信息时,shadow就没有了。

激活镜像库的命令要小心,否则镜像从库就不能实时同步主库信息了。

注:gfix.exe 即在安装目录下。

Firebird shadow的更多相关文章

  1. [转载]Firebird与MySQL:一个使用者的体会

    老板要我开发一个LINUX平台上的数据库项目,要求一定要用开源免费数据库.我知道这个数据库必须能够上网操作,同时作为公司的核心骨干数据库,除了必须是稳定的存储数据库外还必须有很强的数据和数据库控管功能 ...

  2. 【shadow dom入UI】web components思想如何应用于实际项目

    回顾 经过昨天的优化处理([前端优化之拆分CSS]前端三剑客的分分合合),我们在UI一块做了几个关键动作: ① CSS入UI ② CSS作为组件的一个节点而存在,并且会被“格式化”,即选择器带id前缀 ...

  3. iOS 2D绘图 (Quartz2D)之阴影和渐变(shadow,Gradient)

    原博地址:http://blog.csdn.net/hello_hwc/article/details/49507881 Shadow Shadow(阴影) 的目的是为了使UI更有立体感,如图 sha ...

  4. CSS3 笔记三(Shadow/Text/Web Fonts)

    CSS3 Shadow Effects text-shadow box-shadow 1> text-shadow The text-shadow property adds shadow to ...

  5. Tutorial - Deferred Rendering Shadow Mapping 转

    http://www.codinglabs.net/tutorial_opengl_deferred_rendering_shadow_mapping.aspx Tutorial - Deferred ...

  6. linux用户和组管理,/etc/passwd 、/etc/shadow和/etc/group 文件内容解释

    与用户相关的系统配置文件主要有/etc/passwd 和/etc/shadow,其中/etc/shadow是用户资讯的加密文件,比如用户的密码口令的加密保存等: /etc/passwd 和/etc/s ...

  7. OpenGL阴影,Shadow Volumes(附源程序,使用 VCGlib )

    实验平台:Win7,VS2010 先上结果截图:    本文是我前一篇博客:OpenGL阴影,Shadow Mapping(附源程序)的下篇,描述两个最常用的阴影技术中的第二个,Shadow Volu ...

  8. OpenGL阴影,Shadow Mapping(附源程序)

    实验平台:Win7,VS2010 先上结果截图(文章最后下载程序,解压后直接运行BIN文件夹下的EXE程序): 本文描述图形学的两个最常用的阴影技术之一,Shadow Mapping方法(另一种是Sh ...

  9. /etc/passwd&/etc/shadow文件分析

    /etc/passwd该目录存储的是操作系统用户信息,该文件为所有用户可见.给linux系统添加一个帐号:useradd -g mysql -d /home/test -m test(:新建一个用户t ...

随机推荐

  1. C#基础复习(1) 之 Struct与Class的区别

    参考资料 [1] 毛星云[<Effective C#>提炼总结] https://zhuanlan.zhihu.com/p/24553860 [2] <C# 捷径教程> [3] ...

  2. sp2010 升级sp2013 用户无法打开网站

    Add-PSSnapin microsoft.sharepoint.powershell $WebAppName = "http://wtcsps99:82/" $wa = get ...

  3. Weekly Contest 130

    1029. Binary Prefix Divisible By 5 Given an array A of 0s and 1s, consider N_i: the i-th subarray fr ...

  4. You can also run `php --ini` inside terminal to see which files are used by PH P in CLI mode

    在php.ini中打开extension=php_fileinfo.dll 就可以了

  5. Flask从入门到精通之重定向和用户会话

    最新版的hello.py 存在一个可用性问题.用户输入名字后提交表单,然后点击浏览器的刷新按钮,会看到一个莫名其妙的警告,要求在再次提交表单之前进行确认.之所以出现这种情况,是因为刷新页面时浏览器会重 ...

  6. javascript 模块依赖管理的本质

    模块模式定义 模块是'javascript'的一种设计模式,它为函数定义一个包装函数,并且该包装函数的返回值与模块的API保持一致: function createModule() { functio ...

  7. java保留小数点两位的4种方法

    import java.math.BigDecimal; import java.text.DecimalFormat; import java.text.NumberFormat; public c ...

  8. 3. C++ POD类型

    POD全称Plain Old Data,通常用于说明1个类型的属性.通俗的讲,一个类或结构体通过二进制拷贝后还能保持其数据不变,那么它就是一个POD类型. C++11将POD划分为2个基本概念的合集, ...

  9. Java之IO(零)总结

    转载请注明原出处:http://www.cnblogs.com/lighten/p/7274378.html 1.前言 本章是对之前所讲述的整个Java的IO包的一个总结,抽出个人认为比较重要的知识点 ...

  10. numpy 基本使用1

    Numpy是一个非常强大的库,具有大量线性代数以及大规模科学计算的方法. #-*- coding:utf-8 -*- import numpy as np #Numpy生成一维数组 a=np.arra ...