Linux sqlServer数据库还原办法

一、mdf文件方式

一、拷贝文件到对应目录

/var/opt/mssql/data/

二、给文件授权(xxx是指数据库文件名)

chmod 777 xxx*

三、执行命令

USE [master]
GO
CREATE DATABASE [xxx] ON
( FILENAME = N'/var/opt/mssql/data/xxx.mdf' ),
( FILENAME = N'/var/opt/mssql/data/xxx_log.ldf')
FOR ATTACH
GO

二、备份文件方式

一、登录数据库

sqlcmd -S 127.0.0.1 -U sa


image.png

二、查询数据库、数据库日志实例名

RESTORE FILELISTONLY FROM DISK = '/opt/new-products/ogis/ogis_20190521.bak'

image.png

** 三、还原数据库(注意:还原目标数据库不能提前创建)**

RESTORE DATABASE ogis(目标数据库) FROM DISK = '/opt/new-products/ogis/ogis_20190521.bak'
WITH
MOVE 'ogis(实例名)' TO '/var/opt/mssql/data/ogis.mdf',
MOVE 'ogis_log(实例名)' TO '/var/opt/mssql/data/ogis.ldf'
GO

image.png

** 三、已存在数据库bak方式还原**

RESTORE DATABASE [ogis(目标数据库)]
FROM DISK = N'/var/opt/mssql/data/ogis_1117.bak'
WITH FILE = 1, REPLACE

-------------------还原到目标位置-----------------------
restore database zhck from disk = N'/var/opt/mssql/data/zhck_base.bak'
with RECOVERY,REPLACE,
move 'zhck_base' to '/var/opt/mssql/data/zhck_base.mdf',move 'zhck_base_log' to '/var/opt/mssql/data/zhck_base_log.ldf';

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容