精华内容
下载资源
问答
  • 如果能从备份文件中只恢复一个表的数据,那不是很好吗?比如,你备份了AdventureWorks数据库,现的你只恢复里面Vendor表数据。不幸的是,SQL Server本身并支持...但是这里有一点要注意是,假如你选择恢复一个完整

    如果能从备份文件中只恢复一个表的数据,那不是很好吗?比如,你备份了AdventureWorks数据库,现的你只恢复里面Vendor表数据。不幸的是,SQL Server本身并不支持这样还原,你需要从第三方提供的工具中来执行这样的任务。

    提供这种功能的程序都是一些SQL Server第三方备份工具。它们可以让你从备份文件中抽取或是读取单个表数据。

    但是这里有一点要注意是,假如你选择恢复一个完整数据库,那么你选择要恢复的数据有可能与你获取的数据不同。原因就是因为当你执行完整数据库备份时,备份文件包括数据文件和事务日志文件。有一些已经提交的事务还没有写入数据文件,在这种情况下,事务仅仅存储在事务日志中,或者部份数据存储在数据文件。当你使用第三方程序恢复所选择的单表数据时,仅仅只能从备份文件中的数据库文件中获取数据,事务日志中的新数据将会被忽略。

    下图显示了在备份期间没有checkpoint的备份序列。

     

    在备份开始之前,如果事务还没有被写到数据文件中,那会怎么样呢?答案是不确定,因为当备份开始后,SQL Server会自动执行checkpoint操作。当checkpoint期间,脏数据页已经被写到磁盘上了。当我们从备份文件恢复单独一个表的数据时,我们能不能认为要恢复的数据就处于备份开始处呢?这取决于备份过程。如果在备份期间没有事务在运行,那就没问题。如果这期间有事务在运行而且checkpoint也没有被触发,那也没问题。但是如果在备份期间有事务在执行,那我们恢复的数据也许就会包括备份起始时的数据,而且在备份期间数据被提交了的话,如果在备份期间发生了checkpoint而且数据也被写到了数据页,而这个数据页在checkpoint发生时没有被备份。(最后这句实在不知道怎么翻译才好,附上原文如下:If however there were transactions performed during the backup, the data we recover may include data at the beginning of the backup, and data that were committed during the backup IF checkpoints occurred during the backup AND the data was written to pages that were not yet backed up yet at the time the checkpoint occurred.)

    下图显示了带checkpoint的备份序列

     

    当你进行表级别的恢复之前,要先考虑一些事情。一个完整备份包括所有的数据,还有数据库所有直到备份结尾的改变。一个单独的数据文件无法映射出指定时刻数据库的状态。因此,表级别的恢复包括旧、脏数据。假如在备份期间发生checkpoint的话,就会导致数据不一致,也就是说,一个表的数据改变后被写进了备份文件中,但是另外一些表的数据却没有。

    本文翻译自sqlbackuprestore,更多精彩内容请浏览http://www.sqlbackuprestore.com


    本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/tjvictor/archive/2010/01/30/5273075.aspx

    展开全文
  • 那么,此文将从以上几个角度,结合一些实际的实战经验,分步阐述一个完整备份方案到底是怎么样构成的。需要学习更多Mysql数据库相关的知识,可以在公众号:民工哥技术之路的后台回复「MySQL」即可获取一份最全的...

    一份好的备份方案无非包括以下几点:

    • 为什么需要备份?
    • 备份的方式有哪些?
    • 某几种备份方式的区别在哪?
    • 备份实战操作概述
    • 恢复实战操作概述
    • 其它备注信息

    那么,此文将从以上几个角度,结合一些实际的实战经验,分步阐述一个完整的备份方案到底是怎么样构成的。需要学习更多Mysql数据库相关的知识,可以在公众号:民工哥技术之路的后台回复「MySQL」即可获取一份最全的MySQL数据库学习指南。

    为什么需要数据库备份?

    很多人,一看这标题,肯定张口就会答,这不是废话么。不备份故障了怎么办?跑路吗?数据被沙雕开发(不许喷)误删了怎么办?背锅吗?
    当然,大家都知道备份的重要性与必要性。
    1、保证数据安全与完整
    企业的数据安全应该来说是企业的命脉,一旦丢失或造成损坏,轻则损失客户与金钱,重则倒闭(已经有前例在)。
    备份的目的:为了保证数据在被人为失误、操作不当、蓄意等情况下删除或损坏后,能及时、有效的进行恢复并不会很大程度上影响到业务运行。
    2、为业务提供不间断服务
    实际生产环境对数据库的要求,首先就是具备7×24×365不间断服务的能力,这也是一定要备份数据库的其中原因之一。

    数据库的备份方式

    常用的备份方式包括以下:

    • 逻辑备份
    • 物理备份

    1、逻辑备份
    逻辑备份其实就是利用MySQL数据库自带的mysqldump命令,或者使用第三方的工具,然后把数据库里的数据以SQL语句的方式导出成文件的形式。在需要恢复数据时,通过使用相关的命令(如:source )将备份文件里的SQL语句提取出来重新在数据库中执行一遍,从而达到恢复数据的目的。
    实例如下:

    mysqldump -A -B --single-transaction >/server/backup/mysql_$(date +%F).sql
    

    一般备份时都会进行压缩处理,以节省磁盘空间,如下

    mysqldump -A -B --single-transaction |gzip>/server/backup/mysql_$(date +%F).sql.gz
    

    恢复操作

    cd /server/backup/
    gzip -o mysql_$(date +%F).sql.gz
    
    mysql -uroot -pMyadmin -h mysqldb.mingongge.com
    
    > source /server/backup/mysql_$(date +%F).sql
    

    逻辑备份的优点与使用场景
    优点:简单,易操作,自带工具方便、可靠。
    使用场景:数据库数据量不大的情况可以使用,数据量比较大(超过20G左右)时备份速度比较慢,一定程度上还会影响数据库本身的性能。

    2、物理备份
    物理备份就是利用命令(如cp、tar、scp等)直接将数据库的存储数据文件复制一份或多份,分别存放在其它目录,以达到备份的效果。
    这种备份方式,由于在备份时数据库还会存在数据写入的情况,一定程度上会造成数据丢失的可能性。在进行数据恢复时,需要注意新安装的数据的目录路径、版本、配置等与原数据要保持高度一致,否则同样也会有问题。
    所以,这种物理备份方式,常常需要在停机状态下进行,一般对实际生产中的数据库不太可取。因此,此方式比较适用于数据库物理迁移,这种场景下这种方式比较高效率。

    物理备份的优点及使用场景
    优点:速度快,效率高。
    场景:可用于停机维护及数据库物理迁移场景中。
    实际生产环境中,具体使用哪种方式,就需要看需求与应用场景所定。

    全量与增量备份概述
    在介绍完备份方式之后,再来介绍一下,增量与全量备份这两个概念。
    什么是全量备份?
    全量备份:就是将数据库中的所有数据,或者是某一个特定的库里的所有数据,一次全部备份下来。
    在这里插入图片描述
    备份数据库中所有数据

    mysqldump -A -B --single-transaction |gzip>/server/backup/All_data_$(date +%F).sql.gz
    

    备份某个库的数据

    mysqldump -A -B --single-transaction testDB1|gzip>/server/backup/testDB1_$(date +%F).sql.gz
    

    什么是增量备份?
    增量备份:指的是上一次全量备份之后到下一次全量备份这前这段时间内数据库所更新或者是增加的数据,将其备份下来。
    在这里插入图片描述
    注:全量备份是一个文件,而增量备份则是MySQL的binlog日志文件。所以常说的增量备份就是备份binlog日志文件。

    两者的区别在哪?

    全量备份:需要的备份时间长一点,恢复时间会短一点,因为文件数少,维护方便。但是,全量备份的文件大,占用一定的磁盘空间,全理备份时会一定程序上影响数据库的性能(这也就是为什么在0:00点备份的原因),也因文件大的原因,不便于服务器本地保存过多文件,重要业务的全量备份文件可能需要手工下载或迁移到服务器之外的存储空间中。
    增量备份:备份简单,恢复时复杂一点,因为文件数量多,需将所有binlog文件解析成SQL语句,如下:

    mysqlbinlog testDB1-bin.000001 testDB1-bin.000002 >./bin.sql
    

    然后,再通过恢复的方式进行恢复

    mysql -uroot -pMyadmin -h mysqldb.mingongge.com
    
    > source /server/backup/bin.sql
    

    或者如下操作

    cd /server/backup
    
    mysql testDB1 <./bin.sql
    

    备份与恢复实践操作

    对于Mysql数据库的备份,一般采取脚本+定时任务进行日常备份。

    常用执行策略是:

    • 每天0:00执行一次全量备份
    • 按业务需求执行增量备份
      分享一个我在一个创业公司初期的一个备份方案实例
      阿里云数据库服务器备份方案
      方案一:
      目前数据库是主从同步,从库开启binlog日志功能进行异地备份,就目前数据量而言,只需要在从库的基础上进行定时全量与增量备份数据库即可。
    1、创建备份目录
    
    mkdir /server/backup
    
    2、备份数据库到指定目录
    
    mysqldump --single-transaction -F -B phoenix_coupon_production|gzip >/server/backup/phoenix_$(date +%F).sql.gz
    
    mysqldump --single-transaction -F -B ywotx|gzip >/server/backup/ywotx_$(date+%F).sql.gz
    
    find /server/backup/ -type f –name “*.sql.gz”-mtime +7 |xargs rm-f
    
    将脚本写入定时任务,分时段进行打包备份 
    
    3、定时备份二进制文件
    
    通过参数刷新binlog产生新的文件,通过脚本判断文件新旧,然后备份旧的日志文件
    mysqladmin -uroot -pywotx!123 flush-logs #刷新日志,产生新的日志文件
    

    最终将备份文件同步或定时手工下载到异地备份服务器异地存储备份文件,实现数据库备份文件双备份存储,防止服务器硬件故障。

    方案二
    后期数据量增大之后,数据库需要进行读写分离,实现主写,从读,主从同步的架构,备份还是按照原来的备份方案进行,可采用分库分表进行数据备份,防止数据量大导致的恢复时间的问题,提升恢复效率。

    1、创建备份目录
    
    Mkdir /server/backup
    
    2、备份数据到指定目录( 分库分表)
    #/bin/sh
    #create by mingongge at 2017-06-01
    BACKUPDIR=/server/backup
    DATE=`date +%F`
    USER=root
    PASSWD=123456”
    CMD=”mysql –u$USER –p$PASSWD”
    DUMPCMD=”mysqldump –u$USER –p$PASSWD --single-transaction -F”
    
    for dbname in `${CMD} –e “show databases”|sed ‘1d’`
    do
    mkdir –p${BACKUPDIR}/${dbname}
    for tablename in`${CMD} –D ${dbname} –e “show tables”|sed ‘1d’`
    do
    ${DUMPCMD} --tables${dbname} ${tablename} |gzip > ${BACKUPDIR}/${dbname}/${tablename}_$(DATE).sql.gz
    done
    done
    
    find /server/backup/${dbname} -type f –name “*.sql.gz”-mtime +7|xargs rm -f
    
    3、定时备份二进制文件(增量)
    备份方法同方案一
    

    备份频率:

    • 每天0:00进行一次数据库全备
    • 每天03:00 9:00 15:00 21:00 增量备份一次
      数据库的备份,每天一次全备,在全备时会更新binlog日志,重新生成新的日志文件,因此在下一次增量备份时再刷新binlog,再次产生新的日志文件,实现从全备之后对数据库的操作的增量备份,一旦发现数据问题,立即刷新binlog重新成新的日志文件,将原来的日志文件手工备份一份,然后找出产生数据问题的点,从而利用日志文件进行恢复全备到产生数据问题点之间的数据,然后恢复从问题点到发现问题时间段之间的数据.

    新增一台备份服务器,配置如下:
    实例配置:2核/4G/40G + 200G高效云盘 经典网络 1M 295元/月
    方案总结:
    对于数据库服务器本地的备份文件基本上只保留一周时间内的数据,备份服务器按需求(一般保留至少30天的数据),保留30天的数据包括数据库全备文件与增量备份文件,后期可按实际生产需求进行修改,保留时间长短只会增加相应的服务器磁盘空间,增加一定的成本,其它无需改动,操作较为灵活、方便。

    备份方案下载链接如下:
    链接: https://pan.baidu.com/s/1kqfl3cKLv1JjfKx61U-_Og 提取码: tsep

    参考链接 :
    企业级MySQL数据库备份方案 : https://mp.weixin.qq.com/s/fQnHZEC-eqSCPhJI5vDoaA

    展开全文
  • 如果能从备份文件中只恢复一个表的数据,那不是很好吗?比如,你备份了AdventureWorks数据库,现的你只恢复里面Vendor表数据。不幸的是,SQL Server本身并支持...但是这里有一点要注意是,假如你选择恢复一个完整

    如果能从备份文件中只恢复一个表的数据,那不是很好吗?比如,你备份了AdventureWorks数据库,现的你只恢复里面Vendor表数据。不幸的是,SQL Server本身并不支持这样还原,你需要从第三方提供的工具中来执行这样的任务。

    提供这种功能的程序都是一些SQL Server第三方备份工具。它们可以让你从备份文件中抽取或是读取单个表数据。

    但是这里有一点要注意是,假如你选择恢复一个完整数据库,那么你选择要恢复的数据有可能与你获取的数据不同。原因就是因为当你执行完整数据库备份时,备份文件包括数据文件和事务日志文件。有一些已经提交的事务还没有写入数据文件,在这种情况下,事务仅仅存储在事务日志中,或者部份数据存储在数据文件。当你使用第三方程序恢复所选择的单表数据时,仅仅只能从备份文件中的数据库文件中获取数据,事务日志中的新数据将会被忽略。

    下图显示了在备份期间没有checkpoint的备份序列。

    32139_1264679156V8dp[1]

    在备份开始之前,如果事务还没有被写到数据文件中,那会怎么样呢?答案是不确定,因为当备份开始后,SQL Server会自动执行checkpoint操作。当checkpoint期间,脏数据页已经被写到磁盘上了。当我们从备份文件恢复单独一个表的数据时,我们能不能认为要恢复的数据就处于备份开始处呢?这取决于备份过程。如果在备份期间没有事务在运行,那就没问题。如果这期间有事务在运行而且checkpoint也没有被触发,那也没问题。但是如果在备份期间有事务在执行,那我们恢复的数据也许就会包括备份起始时的数据,而且在备份期间数据被提交了的话,如果在备份期间发生了checkpoint而且数据也被写到了数据页,而这个数据页在checkpoint发生时没有被备份。(最后这句实在不知道怎么翻译才好,附上原文如下:If however there were transactions performed during the backup, the data we recover may include data at the beginning of the backup, and data that were committed during the backup IF checkpoints occurred during the backup AND the data was written to pages that were not yet backed up yet at the time the checkpoint occurred.)

    下图显示了带checkpoint的备份序列

    32139_1264679157XjoY[2]

    当你进行表级别的恢复之前,要先考虑一些事情。一个完整备份包括所有的数据,还有数据库所有直到备份结尾的改变。一个单独的数据文件无法映射出指定时刻数据库的状态。因此,表级别的恢复包括旧、脏数据。假如在备份期间发生checkpoint的话,就会导致数据不一致,也就是说,一个表的数据改变后被写进了备份文件中,但是另外一些表的数据却没有。

    本文翻译自sqlbackuprestore,更多精彩内容请浏览http://www.sqlbackuprestore.com

    展开全文
  • 壮士留步,你可以通过数据库历史备份+Binarylog恢复完整数据 mysql会把所有表结构变更以及表数据修改的操作记录到一个二进制日志文件中,也就是我们今天要说的Binarylog(二进制日志),简称binlog。binlog日志是以...

     

    一不小心把公司生产环境数据库删了,而数据库备份只停留到昨天,要丢失一天的生产环境数据?需要赶紧收拾东西跑路吗?

    壮士留步,你可以通过数据库历史备份+Binarylog恢复完整数据

    mysql会把所有表结构变更以及表数据修改的操作记录到一个二进制日志文件中,也就是我们今天要说的Binarylog(二进制日志),简称binlog。binlog日志是以事件的形式记录对mysql的操作,还记录各个操作消耗的时间

    接下来我们通过一个例子演示如何通过binlog恢复被删除的数据

    mysql> create database shifou;
    Query OK, 1 row affected (0.00 sec)
    
    mysql> use shifou;
    Database changed
    
    mysql> create table orders(
        ->        id int auto_increment not null primary key, 
        ->        goods_id int,
        ->        count int 
        -> );
    Query OK, 0 rows affected (0.01 sec)
    


    往orders表中插入数据

    mysql> insert into orders  values (1, 10, 3);
    Query OK, 1 row affected (0.00 sec)
    mysql> insert into orders  values (2, 11, 8);
    Query OK, 1 row affected (0.00 sec)
    


    手一抖,把数据库给删了

    mysql> drop database shifou ;
    Query OK, 1 row affected (0.02 sec)


    这个时候我们看到binlog文件里已经有内容了

    mysql> show master logs;
    +---------------+-----------+-----------+
    | Log_name      | File_size | Encrypted |
    +---------------+-----------+-----------+
    | binlog.000001 |      1234 | No        |
    +---------------+-----------+-----------+
    1 row in set (0.00 sec)
    


    我们来看一下binlog 里边的具体内容,可以看到我们刚才对数据库的所有操作都以event的形式记录到了binlog中

    mysql> show binlog events in 'binlog.000001';
    +---------------+------+----------------+-----------+-------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | Log_name      | Pos  | Event_type     | Server_id | End_log_pos | Info                                                                                                                                                              |
    +---------------+------+----------------+-----------+-------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | binlog.000001 |    4 | Format_desc    |         1 |         125 | Server ver: 8.0.21, Binlog ver: 4                                                                                                                                 |
    | binlog.000001 |  125 | Previous_gtids |         1 |         156 |                                                                                                                                                                   |
    | binlog.000001 |  156 | Anonymous_Gtid |         1 |         233 | SET @@SESSION.GTID_NEXT= 'ANONYMOUS'                                                                                                                              |
    | binlog.000001 |  233 | Query          |         1 |         347 | create database shifou /* xid=35 */                                                                                                                               |
    | binlog.000001 |  347 | Anonymous_Gtid |         1 |         426 | SET @@SESSION.GTID_NEXT= 'ANONYMOUS'                                                                                                                              |
    | binlog.000001 |  426 | Query          |         1 |         652 | use `shifou`; create table orders(
           id int auto_increment not null primary key, 
           goods_id int,
           count int 
    ) /* xid=40 */                      |
    | binlog.000001 |  652 | Anonymous_Gtid |         1 |         731 | SET @@SESSION.GTID_NEXT= 'ANONYMOUS'                                                                                                                              |
    | binlog.000001 |  731 | Query          |         1 |         808 | BEGIN                                                                                                                                                             |
    | binlog.000001 |  808 | Table_map      |         1 |         864 | table_id: 121 (shifou.orders)                                                                                                                                     |
    | binlog.000001 |  864 | Write_rows     |         1 |         912 | table_id: 121 flags: STMT_END_F                                                                                                                                   |
    | binlog.000001 |  912 | Xid            |         1 |         943 | COMMIT /* xid=47 */                                                                                                                                               |
    | binlog.000001 |  943 | Anonymous_Gtid |         1 |        1022 | SET @@SESSION.GTID_NEXT= 'ANONYMOUS'                                                                                                                              |
    | binlog.000001 | 1022 | Query          |         1 |        1099 | BEGIN                                                                                                                                                             |
    | binlog.000001 | 1099 | Table_map      |         1 |        1155 | table_id: 121 (shifou.orders)                                                                                                                                     |
    | binlog.000001 | 1155 | Write_rows     |         1 |        1203 | table_id: 121 flags: STMT_END_F                                                                                                                                   |
    | binlog.000001 | 1203 | Xid            |         1 |        1234 | COMMIT /* xid=49 */                                                                                                                                               |
    | binlog.000001 | 1234 | Anonymous_Gtid |         1 |        1311 | SET @@SESSION.GTID_NEXT= 'ANONYMOUS'                                                                                                                              |
    | binlog.000001 | 1311 | Query          |         1 |        1421 | drop database shifou /* xid=51 */                                                                                                                                 |
    +---------------+------+----------------+-----------+-------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    18 rows in set (0.00 sec)


    binlog 日志中的最后一个操作event就是我们执行删库的操作,所以我们在恢复数据的时候,要略过这个event。


    mysqlbinlog 命令可以通过指定事件位置号来恢复具体的事件操作
    接下来我们用mysqlbinlog命令来恢被删除的数据库,从binlog文件中可以看出,刚开始的事件位置编号是4,删库前的事件位置编号是1234,所以我们恢复事件4-1234之间的数据操作:

    $ mysqlbinlog --start-position=4 --stop-position=1234 /usr/local/var/mysql/binlog.000001 | mysql -uroot -p
    


    执行成功之后我们再看下数据:

    mysql> select * from orders;
    +------------------+------------------------+---------------------+
    |        id        |        goods_id        |        count        |
    +------------------+------------------------+---------------------+
    |                1 |                     10 |                   3 |
    |                2 |                     11 |                   8 |
    +------------------+------------------------+---------------------+
    2 rows in set (0.00 sec)
    
    


    good!被删除的数据库又回来了。好了,不用着急跑路,继续安心的写代码吧

    下篇文章中我们会详细介绍下binlog的更多用法和配置,以及binlog中event的实现原理

    只有干货,没有鸡汤。点关注不迷路

    想要交流其他开发技术,可关注我微信公众号 全栈师否:

     

    展开全文
  • 使用GHOST备份XP/2000的注意点GHOST是个非常好的软件,配合一些朋友编写的辅助软件,可以实现完整备份系统的功能,从而在恢复系统时提供了便利,但是,你知道吗?任何事情都有利有弊,使用不当就可能带来可弥补...
  • 【生成数据列】 生成发票号码序列的得力助手,可以生成任意的奇偶数列,差值或倍值或者递增、递减的任意有理数数据序列,支持先行后列与先列后行两种方式,支持瞬时恢复清除。 【取RMB张数】 根据员工的工资计算...
  • 11月19日,21点,小编正六指霸屏,决赛圈1V4,忽然,电话响了,这种感觉很熟悉,不错,上次差点推掉对面水晶的那一幕又上演了……作为一名美创的员工,...1、有的话可以完整备份恢复+日志备份(误操作前的LSN恢...
  • 11月19日,21点,小编正六指霸屏,决赛圈1V4,忽然,电话响了,这种感觉很熟悉,不错,上次差点推掉对面水晶的那一幕又上演了……作为一名美创的员工,客户...1、有的话可以完整备份恢复+日志备份(误操作前的LSN恢...
  • 【生成数据列】 生成发票号码序列的得力助手,可以生成任意的奇偶数列,差值或倍值或者递增、递减的任意有理数数据序列,支持先行后列与先列后行两种方式,支持瞬时恢复清除。 【取RMB张数】 根据员工的工资计算需要...
  • 现在是信息化时代,对于很多企业来说企业数据的价值可估量,但是很多企业并没有一套完整的数据备份系统,在数据丢失的时候常常进入两难的境地。如果恢复,就会造成严重的损失,如果拿去恢复,就有可能面对信息...
  • 书中内容主要集中在大多数企业常见的问题之上,如安装和升级到oracle database 11g数据库软件、创建数据库、导出和导入数据、数据库的备份恢复、性能调优,等等。  本书还提供了dba完成本职工作必备的基本的uniix...
  • 美萍足浴软件1010v2

    2010-04-29 13:27:13
    删除预订:在预订管理窗口中选择一条要删除的预订信息,然后点击预订管理窗口中的“删除”按钮,系统将给出提示“删除后将恢复,确定删除吗?”,点击“确定”将永久删除所选中的预订信息,点击“取消”将做...
  • 数据控制功能,包括数据的安全性保护、数据的完整性检查、并发控制和数据库恢复。解析 DBMS 数据控制功能包括四个方面:数据的安全性保护:保护数据以防止合法的使用造 成的数据的泄密和破坏;数据的完整性检查:...
  • 可能是一个包含注册表数据文件的结构已损坏,也可能内存中该文件的系统映像已损坏,或者因为备份副本(或日志)存在(或损坏)导致无法恢复该文件。  1016 由注册表引起的 I/O 操作发生了恢复的错误。...
  • 当计算机系统发生硬件故障、软件故障,或者由于操作员的失误以及故意的破坏影响数据库中数据的正确性,甚至造成数据库部分或全部数据的丢失时,能将数据库从错误状态恢复到某一已知的正确状态(亦称为完整状态或一致...
  • 【生成数据列】 生成发票号码序列的得力助手,可以生成任意的奇偶数列,差值或倍值或者递增、递减的任意有理数数据序列,支持先行后列与先列后行两种方式,支持瞬时恢复清除。 【取RMB张数】 根据员工的工资计算...
  • 【生成数据列】 生成发票号码序列的得力助手,可以生成任意的奇偶数列,差值或倍值或者递增、递减的任意有理数数据序列,支持先行后列与先列后行两种方式,支持瞬时恢复清除。 【取RMB张数】 根据员工的工资计算...
  • EXCEL集成工具箱V6.0

    2010-09-11 01:44:37
    【生成数据列】 生成发票号码序列的得力助手,可以生成任意的奇偶数列,差值或倍值或者递增、递减的任意有理数数据序列,支持先行后列与先列后行两种方式,支持瞬时恢复清除。 【取RMB张数】 根据员工的工资计算...
  • 安装完毕,选择现在激活以后激活,按下一步,至少填入一个名字,如JixXP,一路回车键,可以 了。 现在开始激活系统:我采用的是俄罗斯黑客的激活办法。见下面使用说明: 方法:把SETUPREG.HIV复制到%...
  • 阅读工具 开卷有益

    2012-03-31 14:07:03
    增加:恢复系统默认主题功能(小说设置|背景字体|菜单|恢复默认主题) 5. 优化:启动速度 6. 优化:排版算法,尽最大可能充满屏幕 7. 优化:阻尼滑动时,背景音乐偶尔会卡的问题 修复: 1. 修复:打开HTML的...
  • 1.3.3 如果让你设计一个通用的、支持各种数据库秒级备份恢复的系统,你会如何设计 1.3.4 如果让你来设计一个支持数据库、NOSQL 和大数据之间数据实时流动的数据流及处理的系统,你会考虑哪些问题?如何设计? ...
  • 964.9 设置字段的默认值 964.10 使用关系、关键字字段和索引 974.10.1 建立表之间的关系 984.10.2 实施参照完整性 1004.10.3 选择一个主键 1014.10.4 往表中添加索引 1024.11 改变字段和关系 1044.11.1 重新安排表中...
  • 964.9 设置字段的默认值 964.10 使用关系、关键字字段和索引 974.10.1 建立表之间的关系 984.10.2 实施参照完整性 1004.10.3 选择一个主键 1014.10.4 往表中添加索引 1024.11 改变字段和关系 1044.11.1 重新安排表中...
  • 964.9 设置字段的默认值 964.10 使用关系、关键字字段和索引 974.10.1 建立表之间的关系 984.10.2 实施参照完整性 1004.10.3 选择一个主键 1014.10.4 往表中添加索引 1024.11 改变字段和关系 1044.11.1 重新安排表中...
  • 964.9 设置字段的默认值 964.10 使用关系、关键字字段和索引 974.10.1 建立表之间的关系 984.10.2 实施参照完整性 1004.10.3 选择一个主键 1014.10.4 往表中添加索引 1024.11 改变字段和关系 1044.11.1 重新安排表中...

空空如也

空空如也

1 2
收藏数 25
精华内容 10
关键字:

备份不完整可以恢复吗