zoukankan      html  css  js  c++  java
  • SQL用户恢复

    [转]这一文章的主题是如何把sql 2000 上的数据库迁移到 sql 2005上面来。

    一、准备工作:备份 sql 2000上的数据库,形成 bak 文件。在 目标机器的 sql 2005 上新建立同名空数据库,选择还原操作。这时,应该会出现

    错误:SQl Server2005 目录失败,出现操作系统错误...

    二、原因分析:在还原数据库的时候, bak文件存储了原始数据库的存储路径,这个路径在新数据库所在机器上不存在,所以这里要使用sql语句进

    行还原,还原的时候需要更改一下 mdf、ldf文件的位置。

    1、 SQL 2005  新建同名数据库,保存在:
    C:\Program Files\Microsoft SQL Server\MSSQL\data\

    2、在查询分析器执行以下语句:
    RESTORE  DATABASE  AcafaDb  FROM  DISK  = 'C:\AcafaDb.bak'  with replace,
    MOVE  'AcafaDb_Data'  TO  'C:\Program  Files\Microsoft  SQL Server\MSSQL\Data\AcafaDb_Data.MDF',
    MOVE 'AcafaDb_log'  TO 'C:\Program Files\Microsoft SQL Server\MSSQL\Data\AcafaDb_Log.LDF'

    注意:
    1)、C:\AcafaDb.bak 是数据库备份文件的路径
    2)、C:\Program  Files\Microsoft SQL Server\MSSQL\Data\AcafaDb_Data.MDF 是保存数据库文件的路径
    3)、C:\Program Files\Microsoft SQL Server\MSSQL\Data\AcafaDb_Log.LDF 是保存数据库日志文件的路径

    3、成功还原后,数据库原来的登录用户,变成了孤立用户。
    所谓孤立用户,就是某个数据库帳戶只有用户名,而没有登录名,这样用户在用户表 sysusers 中存在,而在 master 数据库的syslogins 中没有对

    应的记录。

    孤立用户的产生一般是以下两种原因形成的:
    1).将备份的数据库在其他机器上还原;
    2).重装系统或SQL SERVER 只还原了用户库

    解决办法是使用系统自带的存储过程 sp_change_users_login 来修复:

    USE AcafaDb;
    GO
    EXEC sp_change_users_login 'Auto_Fix', 'acafacom', NULL, 'password';
    GO
     
    意思是:修复用户名acafacom,密码为password


     

  • 相关阅读:
    Android App上架流程
    php字符串操作
    SpringBoot配置MongoDB多数剧源
    Spring boot使用influxDB总结
    Spring boot配置MongoDB以及Morphia踩坑记录
    使用Kubernetes的java-client实现Deployment的部署及更新操作
    Golang循环中调用go func参数异常分析
    git tag本地删除以及远程删除
    SpringBoot之GZip压缩,HTTP/2,文件上传,缓存配置
    Java服务使用Redis实现分布式全局唯一标识
  • 原文地址:https://www.cnblogs.com/acafaxy/p/1986964.html
Copyright © 2011-2022 走看看