首页 > 数据库 >7.数据库备份还原

7.数据库备份还原

时间:2023-05-12 12:04:16浏览次数:62  
标签:opt RESTORE 备份 MOVE 数据库 还原 Test mssql

5.数据库备份还原 https://blog.csdn.net/zhang41228/article/details/79893230       Linux下SqlServer的备份和还原   Eagle昊 2018-04-11 10:58:31 6760 收藏 8 分类专栏: 数据库 Linux学习笔记 版权   数据库 同时被 2 个专栏收录 8 篇文章0 订阅 订阅专栏   Linux学习笔记 4 篇文章0 订阅 订阅专栏 Linux下备份SqlServer数据库命令 //创建数据库备份文件夹 mkdir -pv /usr/local/databackup //给mussql授予/usr/local/databackup文件夹的权限 chown -R mssql:mssql /usr/local/databackup/ //登录数据库 sqlcmd -S 127.0.0.1 -U sa //备份数据库到指定路径 1> backup database Test to disk='/usr/local/databackup/Test0411.bak' 2> go 1 2 3 4 5 6 7 8 9 10 2.Linux下还原数据库   // 登录数据库 sqlcmd -S 127.0.0.1 -U sa // 查出备份文件的逻辑文件名(很重要!!!不然会报错) RESTORE FILELISTONLY FROM DISK = '/usr/local/databackup/Test0411.bak' // 这个时候会显示两条数据,可能在Linux下数据会很乱,你找到里面的第一列LogicalName对应的值,我这里一个为standard,另一个为standard_log,standard是数据文件逻辑名,standard_log是日志文件逻辑名     // 然后进行还原 1> RESTORE DATABASE TestDB FROM DISK = '/usr/local/databackup/Test0414.bak' 2> WITH MOVE 'standard' TO '/var/opt/mssql/data/TestDB.mdf', 3> MOVE 'standard_log' TO '/var/opt/mssql/data/TestDB_Log.ldf' 4> go 1 2 3 4 5 6 7 8 9 10 11 12 13 期间出现的问题: 1. Msg 1834, Level 16, State 1, Server psqadb2, Line 1 无法覆盖文件 '/var/opt/mssql/data/Test.mdf'。数据库 'Test' 正在使用该文件。 Msg 3156, Level 16, State 4, Server psqadb2, Line 1 文件 'standard' 无法还原为 '/var/opt/mssql/data/Test.mdf'。请使用 WITH MOVE 选项来标识该文件的有效位置。 Msg 1834, Level 16, State 1, Server psqadb2, Line 1 无法覆盖文件 '/var/opt/mssql/data/Test.ldf'。数据库 'Test' 正在使用该文件。 Msg 3156, Level 16, State 4, Server psqadb2, Line 1 文件 'standard_log' 无法还原为 '/var/opt/mssql/data/Test.ldf'。请使用 WITH MOVE 选项来标识该文件的有效位置。 Msg 3119, Level 16, State 1, Server psqadb2, Line 1 在计划 RESTORE 语句时发现了问题。以前的消息提供了详细信息。 Msg 3013, Level 16, State 1, Server psqadb2, Line 1 RESTORE DATABASE 正在异常终止。   原因:这是因为没有使用WITH MOVE来还原数据文件和日志文件,导致跟原来的数据库的数据文件和日志文件重名,因为原来的数据库还在使用,导致覆盖报错 解决方法:在还原命令后面加上WITH MOVE就可以了,具体参考如上的例子   2. 逻辑文件 'Test' 不是数据库 'TestDB' 的一部分。请使用 RESTORE FILELISTONLY 来列出逻辑文件名。   原因:这是因为逻辑文件名错误,导致move报错 解决方法:通过RESTORE FILELISTONLY FROM DISK=’数据库备份文件bak路径’查出逻辑文件名,然后修改move后面的逻辑文件名为查出来的就可以了 ———————————————— 版权声明:本文为CSDN博主「Eagle昊」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。 原文链接:https://blog.csdn.net/zhang41228/article/details/79893230   RESTORE FILELISTONLY FROM DISK = '/home/ZRAdmin/DB/meizhou.bak' go RESTORE DATABASE HighWayMeiZhou FROM DISK = '/home/ZRAdmin/DB/meizhou.bak' WITH MOVE 'YiShaAdmin' TO '/var/opt/mssql/data/HighWayMeiZhou.mdf', MOVE 'YiShaAdmin_log' TO '/var/opt/mssql/data/HighWayMeiZhou_Log.ldf'

标签:opt,RESTORE,备份,MOVE,数据库,还原,Test,mssql
From: https://www.cnblogs.com/louisxx/p/17393676.html

相关文章

  • 数据库修改端口
    数据库修改端口  1.修改数据库默认端口(自定义为5500)#修改Sqlserver默认端口为5500/opt/mssql/bin/mssql-confsetnetwork.tcpport5500 2.重启Sqlserver服务systemctlrestartmssql-server 3.防火墙放行修改的端口(云服务器添加入站规则即可)firewall-cmd--zo......
  • Entity FrameWork 6 与sqlserver数据库建立连接
    1、新建一个控制台项目  2、添加EF6   3、新建2个表并建立外联关系department:departmentId为主键 person:id为主键    4、连接sqlserver数据库             ......
  • 数据库值转换
    SELECTCONVERT(INT,25.65)--25selectCONVERT(decimal,'123.45')--123selectCONVERT(decimal(9,2),'123.45')--123.45SELECTCONVERT(VARCHAR(25),GETDATE())--0922202110:31PMSELECTCONVERT(VARCHAR(24),GETDATE(),120......
  • java基于springboot+html的学生就业管理系统的设计与实现,附源码+数据库+文档,包安装调
    1、项目介绍本系统是利用现代化的计算机网络技术将传统信息宣传方式整合,按照实践过程设计完成的。同时完善服务,初步设计一个学生就业管理系统平台以利于相关的事务操作。为了使系统在各项管理中发挥更大的作用,实现计算机信息化高效的管理,现将开发目标功能需求介绍如下:(1)管理员模......
  • 数据库完整性
    完整性概述数据库的完整性是指数据库的正确性、一致性、相容性正确性:数据库的数据符合语义约束一致性:数据间的逻辑关系是正确的,从一个一致性状态转移到另一个一致性状态相容性:同一事物的两个数据应当是一致的约束的分类从约束的状态分类:可以分为静态约束和动态约束静态约......
  • 数据库基础
    1.数据库mysql数据库使用和可视化关系型数据库mysql使用:开启服务:netstartmysql登录:mysql-uroot-p关闭服务:netstopmysql图形化MySQL数据库管理工具:SQLyog安装后的秘钥:cr1738d8120df-a5c3-4989-8f47-5afc79c56e7c2.操作数据库操作数据库>操作数据库表>操......
  • Python学习之二:不同数据库相同表是否相同的比较方法
    摘要昨天学习了使用python进行数据库主键异常的查看.当时想我们有跨数据库的数据同步场景.对应的我可以对不同数据库的相同表的核心字段进行对比.这样的话能够极大的提高工作效率.我之前写过很长时间的shell.昨天跟着同事开始学python.感觉的确用python能够节约大量的时间.......
  • Linux下安装MySQL数据库
    系统:Centos7安装MySQL版本:8.0.32安装方式:压缩包MySQL官网下载https://downloads.mysql.com/archives/community/ 一、检查是否安装过msyql和mariadb数据库rpm-qa|grepmysqlrpm-qa|grepmariadb如果存在的话使用命令卸载:rpm-e--nodeps  二、安装mys......
  • Java 远程连接 SQLite 数据库
    Java远程连接SQLite数据库 Java可以使用JDBCAPI来连接SQLite数据库。但是,SQLite不支持远程连接,因为它是一种文件数据库,需要直接访问数据库文件。如果您需要从远程位置访问SQLite数据库,可以将SQLite数据库文件放在共享文件夹中,并将该文件夹映射到本地计算机上。......
  • 数据库DDL和DML
    DDL代表数据定义语言,是一种有助于创建数据库模式的SQL命令。而,DML代表数据操作语言,是一种有助于检索和管理关系数据库中数据的SQL命令。  命令上的区别:DDL中常用的命令有:create,drop,alter,truncate和rename等等。而,DML中常用的命令有:insert,update,delete和select等等。 1.......