1:导出的SQl脚本文件通常大于100M左右就会还原不了,不是报错就是说系统文件找不到(sql脚本是直接拖进来的,不存在路径的问题).

 

2:CMD 使用 OSQL命令或者Sqlcmd命令都是可以解决的,其实就是采用的ODBC的技术,一行一行的去执行(这样几十G的脚本文件都没有问题).

 

3:经个人测试,下面两个命令都可以:

  osql -S"XB-201907130929\ZRFSQLSERVER" -U"sa" -P"QQ88" -i"mysqlBack.sql" -d"FenggeTestDB" 

  sqlcmd -S"XB-201907130929\ZRFSQLSERVER" -U"sa" -P"QQ88" -i"mysqlBack.sql" -d"FenggeTestDB"

 

4:-S 你的sqlserver数据库的服务器名称; -U 用户名; -P 密码; -i 你的文件路径; -d 你的数据库名称(建议先在数据库中创建好).

 

5:如下测试的截图:

5.1:报错

大文件SQl脚本怎么还原以及SQlsqlserver怎么全自动备份数据库

 

 5.2:在SQl脚本的路径下打开CMD并查看对应的命令:

大文件SQl脚本怎么还原以及SQlsqlserver怎么全自动备份数据库

 

5.3执行命令后会一行一行的显示:一行受到影响,最后成功的效果如下:可以看到数据库已经有表以及数据

 大文件SQl脚本怎么还原以及SQlsqlserver怎么全自动备份数据库

 

6:全自动备份SQlserver中的数据库:直接上干货

     6.1 手动备份单个文件:

Backup Database database_name
To disk='X:\folder\database_name_mirror1.backupname.bak'

     6.2:使用作业计划全自动备份, SQl脚本如下:

DECLARE @date DATETIME=GETDATE();
DECLARE @name VARCHAR(20);
DECLARE @okpath varchar(100);
SELECT @name= CONVERT(VARCHAR,DATEPART(YEAR,@date),10) +
'-'+ CONVERT(VARCHAR,DATEPART(MONTH,@date),10)+
'-'+CONVERT(VARCHAR,DATEPART(DAY,@date),10)+
'-'+CONVERT(VARCHAR,DATEPART(HOUR,@date),10)+
'-'+CONVERT(VARCHAR,DATEPART(MINUTE,@date),10)+
'-'+CONVERT(VARCHAR,DATEPART(SECOND,@date),10);
SET @okpath='D:\upfile\upfile_backup'+ convert(varchar,@name,20)+'.bak'
PRINT(@name);
PRINT(@okpath);

BACKUP Database DBTEST
 To disk=@okpath  --WITH int;
View Code

相关文章:

  • 2021-04-16
  • 2022-12-23
  • 2022-12-23
  • 2022-01-03
  • 2021-10-02
  • 2022-01-26
  • 2021-10-01
猜你喜欢
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-11-20
  • 2022-02-06
  • 2021-07-08
相关资源
相似解决方案