精华内容
下载资源
问答
  • sql server完整复制数据库

    万次阅读 多人点赞 2018-06-05 15:05:43
    下面讲解一种简单易操作的数据库复制方法。步骤一:在Microsoft sql server Management studio中,将源数据库进行备份,生成一个备份文件dbname.bak;记住备份文件存放的地址,或者复制下来,以防一会找不;步骤二...

    当需要完整的复制一个数据库时,不清楚原理的时候往往会出现各种问题。下面讲解一种简单易操作的数据库复制方法。

    步骤一:在Microsoft sql server Management studio中,将源数据库进行备份,生成一个备份文件dbname.bak;记住备份文件存放的地址,或者复制下来,以防一会找不到;

    步骤二:在Microsoft sql server Management studio中,新建一个数据库dbname2(与源数据库名称不一样);新建数据库的时候记住或者重新指定数据库文件存放的路径,我这里指定到自定义目录;创建后在E:\data下生成2个文件;

        

            

                

    步骤三:选中新建的dbname2数据库,右击选择 任务-->还原,在还原面板上按如下操作;

         

                  

               

                最后,点击确认即可。

                

    步骤四:还原后的数据库,可能会一直显示“正在还原...”。管理器不会主动刷新,手工刷新一下。如果手工刷新后还是显示“正在还原”,则可能是进程被挂起了,需要执行:RESTORE database  dbname2 with recovery 即可。

                    

    展开全文
  • Navicate复制数据库到另外的电脑

    千次阅读 2018-04-07 23:24:08
    概述:硬件:2台电脑,路由器(或者一根网线,本人没用网线直接都连了无线)环境:Windows10,Navicate,Windows ...2台电脑用主从机代替,数据在主机,从机去复制主机数据--------------------------------------...

    概述:

    硬件:2台电脑,路由器(或者一根网线,本人没用网线直接都连了无线)

    环境:Windows10,Navicate,Windows Mysql(安装可以百度)

    准备工作:win+r输入services.msc,查看Mysql服务是否开启,2台电脑都要查看

    说明:为了方便描述,2台电脑用主从机代替,数据在主机,从机去复制主机数据

    -----------------------------------------------------------------------------------------------------

    步骤:

    1,从机的Navicat连接本地数据库


    -----------------------------------------------------------------------------------------------------

    2,从机的Navicat连接主机数据库

    注意:连不上请看下面的问题一

    -----------------------------------------------------------------------------------------------------

    3,选中从机的主机数据库右键,如果报错,请看下面的问题二



    -----------------------------------------------------------------------------------------------------

    4,选确定,看到Successfully说明成功了


    -----------------------------------------------------------------------------------------------------

    问题一:出现下面描述,原因主机的数据库没有授权

    1130-host . is not allowed to connect to this MySql server

    解决:授权需要在主机操作,连接数据库后执行下列语句,再继续步骤3

    grant all privileges on *.* to root@"%" identified by 'root' with grant option;  --表式任意ip用户为root,密码为root连接
    flush privileges;

    问题一:扩展,可不看

    如果你想允许用户binge从ip为192.168.1.6的主机连接到mysql服务器的fms数据库,并使用mypassword作为密码
    
    GRANT ALL PRIVILEGES ON fms.* TO 'binge'@'192.168.1.6' IDENTIFIED BY 'mypassword' WITH GRANT OPTION;
    
    FLUSH   PRIVILEGES;

    ----------------------------------------------------------------------------------------------------------

    问题二:出现下面描述:2台电脑的数据库Mysql版本不兼容

    Cannot proceed because system tables used by Event Scheduler were found damaged at server

    (在服务器启动的事件调度器所使用的系统表损坏,无法继续)

    解决:下面是Windows解决,Linux同理

    1,打开cmd,输入e:再输入cd E:\Mysql\location\bin,如下图 


    2,输入,mysql_upgrade – u root -p ,再输入密码如123

    3,win+r输入services.msc重新启动MySQL服务


    展开全文
  • 复制数据库

    千次阅读 2006-12-19 09:01:00
    复制数据库sql200企业管理器--右键要复制的数据库a--所有任务--导出数据--目标数据库,选择数据库b--然后选择"在SQL Server数据库之间复制数据和对象"--勾选"创建目的对象","包含扩展属性"--最后完成. 或者查询分析...

    复制数据库

    sql200企业管理器
    --右键要复制的数据库a
    --所有任务
    --导出数据
    --目标数据库,选择数据库b
    --然后选择"在SQL Server数据库之间复制数据和对象"
    --勾选"创建目的对象","包含扩展属性"
    --最后完成.

     

    或者查询分析器执行下面的语句创建一个存储过程,然后再执行调用示例中的调用方法实现数据库复制

    use master
    go

    if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[p_CopyDb]') and OBJECTPROPERTY(id, N'IsProcedure') = 1)
    drop procedure [dbo].[p_CopyDb]
    GO

    /*--将一个数据库完整复制成另一个数据库

    借助备份/恢复,将源数据库复制为目标数据库

    --邹建 2003.10(引用请保留此信息)--*/

    /*--调用示例

    exec p_CopyDb @sdbname=N'pubs'
    --*/
    create proc p_CopyDb
    @sdbname sysname=N'',   --定义要复制的数据库名,默认为当前数据库
    @ddbname sysname=N'',   --定义复制后生成的数据库名,默认为当前数据库名+_bak
    @overexist bit=1,       --是否覆盖已经存在的数据库
    @killuser bit=1         --是否关闭用户使用进程,仅@overexist=1时有效
    as
    declare @s Nvarchar(4000),@bkfile Nvarchar(1000),@move Nvarchar(4000)

    --参数检查
    if @overexist is null set @overexist=0
    if @killuser is null set @killuser=0

    --检查复制的源库名
    if isnull(@sdbname,N'')=N''
    set @sdbname=db_name()
    else if db_id(@sdbname) is null
    begin
    raiserror(N'数据库"%s"无效',1,16,@sdbname)
    return
    end

    --检查目标数据库
    if isnull(@ddbname,N'')=''
    set @ddbname=@sdbname+N'_bak'
    if @overexist=0 and db_id(@ddbname) is not null
    begin
    raiserror(N'目标数据库"%s"已经存在',1,16,@ddbname)
    return
    end

    --临时备份文件名
    select top 1 @bkfile=rtrim(reverse(filename))
    from master.dbo.sysfiles
    where name=N'master'
    select @bkfile=stuff(@bkfile,1,charindex('/',@bkfile),N'')
    ,@bkfile=reverse(stuff(@bkfile,1,charindex('/',@bkfile),N''))
    +N'/BACKUP/'+cast(newid() as nvarchar(36))+N'.bak'

    --数据文件移动语句
    set @s=N'set @move=N''''
    select @move=@move
    +N'',move ''+quotename(rtrim(name),N'''''''')
    +N'' to ''+quotename(rtrim(case
    when charindex(N'
    +quotename(@sdbname,N'''')
    +N',filename)>0
    then stuff(filename,charindex(N'
    +quotename(@sdbname,N'''')
    +N',filename),'
    +cast(len(@sdbname) as nvarchar)
    +N',N'+quotename(@ddbname,N'''')+N')
    else reverse(stuff(
    reverse(filename),
    charindex(''/'',reverse(filename)),
    0,
    +N''_''+reverse(N'+quotename(@ddbname,N'''')+N')))
    end),N'''''''')
    from '+quotename(@sdbname)+N'.dbo.sysfiles'
    exec sp_executesql @s,N'@move Nvarchar(4000) out',@move out

    --备份源数据库
    set @s=N'backup database '+quotename(@sdbname)+N' to disk=@bkfile with format'
    exec sp_executesql @s,N'@bkfile Nvarchar(1000)',@bkfile

    --如果需要,做关闭用户进程处理
    if @killuser=1 and db_id(@ddbname) is not null
    begin
    declare tb cursor local
    for
    select N'kill '+cast(spid as varchar)
    from master.dbo.sysprocesses
    where dbid=db_id(@ddbname)
    open tb
    fetch tb into @s
    while @@fetch_status=0
    begin 
    exec sp_executesql @s
    fetch tb into @s
    end 
    close tb
    deallocate tb
    end

    --还原为目标数据库
    set @s=N'restore database '
    +quotename(@ddbname)
    +N' from disk=@bkfile with replace'
    +@move
    exec sp_executesql @s,N'@bkfile Nvarchar(1000)',@bkfile

    --删除临时备份文件
    set @s='del "'+@bkfile+'"'
    exec master..xp_cmdshell @s,no_output
    go

    注意两种方法
    第一种方法,如果不勾选创建目的对象,则适合于数据库b已经建立好,只需要复制数据的情况
    否则1,2种方法都是把数据库a完全(包括视图等...)复制到数据库b,结果是两个数据库完全一样

     

    展开全文
  • mysql 快速复制数据库

    千次阅读 2019-03-07 18:13:33
    1.新建db5数据库 create database db5; 2.在cmd窗口输入下面命令可以完全复制db1数据库内容db5数据库 mysqldump db1 -u root -proot --add-drop-table | mysql db5 -u root -proot ...

    1.新建db5数据库

    create database db5;

    2.在cmd窗口输入下面命令可以完全复制db1数据库内容到db5数据库

    mysqldump db1 -u root -proot --add-drop-table | mysql db5 -u root -proot
     

    展开全文
  • postgres复制数据库

    千次阅读 2020-04-01 09:53:21
    复制数据库 新建abc数据库 [postgres@localhost ~]$ psql -c"create database abc" ----创建一个空库 CREATE DATABASE [postgres@localhost ~]$ pg_dump portal |psql abc ----以流的方式,将portal数据库中的...
  • 1、建立复制数据库: 分为用户管理的方式建立复制数据库和rman建立复制数据库。 对于用户管理的复制数据库来说,还可以分为本机建立复制数据库和不在本机建立复制数据库,但是这两个方式区别不大,建立 数据库的...
  • 本文章以一个表为例,要转多个表则可将DataSet关联多个表,下面给出完整代码,包括引用以及main函数与复制函数。
  • mysql复制表以及复制数据库

    万次阅读 2017-08-09 11:46:40
    (一)将旧表复制到新表 1、CREATE TABLE新表 SELECT* FROM旧表; 该语句只是复制表结构以及数据,它不会复制与表关联的其他数据库对象,如索引,主键约束,外键约束,触发器等。 CREATE TABLE if not exists ...
  • navicat——复制数据库

    千次阅读 热门讨论 2018-02-26 21:00:47
    最近因为做一个小测试,如果直接在项目的数据库上进行修改不太好,所以为了保险我就把项目的数据库复制了本地,下面就来介绍一下利用navicat复制数据库表的两种方法。详情请见下文! 【正文】 一、第一种方法...
  • MSSQL 2005 复制本地数据库到本地

    千次阅读 2011-11-19 10:56:33
    一、 本地远程 平时我们用的多的是将 MSSQL 数据库导出别的机器去,有若干方法: ...如果你以为分离了数据库复制一份改名字,再附加上去就可以了,那就错了,数据库名字的信息他是保存在log 文件里边,在附
  • Sqlserver2008 复制数据库

    千次阅读 2019-03-06 09:51:22
    --------------------- 作者:lynehylo 来源:CSDN ...版权声明:本文为博主原创文章,转载请附上博文链接! 当需要完整的复制一个数据库时,不清楚...下面讲解一种简单易操作的数据库复制方法。 步骤一:在Mic...
  • 要将数据库database1内的表tabel1完整复制到database2内。 选中database1内的tabel1,鼠标右键,CREATE—>新查询编辑窗口 将开头的USE [database1] 改成 USE [database2] ,再结尾插入下面的语句:insert i
  • MySQL快速复制数据库数据表的方法

    千次阅读 2016-12-29 14:49:13
    MySQL快速复制数据库数据表的方法 ...下面小编给大家介绍mysql快速复制数据库数据表的方法,小伙伴们跟着小编一起学习吧 某些时候,例如为了搭建一个测试环境,或者克隆一个网站,需要复制一个已
  • 一、如果两个数据库在同一台服务器上 方法一、 1、复制表结构和数据:SELECT * INTO DatabaseB.dbo.TableB FROM DatabaseA.dbo.TableA 2、仅仅复制表结构:SELECT * INTO DatabaseB.dbo.TableB FROM DatabaseA...
  • SQLite实现不同数据表之前内容复制 1) 在SQLiteExpert ...2) 执行下面的SQL语句实现表格内容复制(将source数据库的表格table1中内容复制到dist的某一个表格中): l 当dist数据库已经存在table1表格, insert
  • 数据库主从复制

    千次阅读 热门讨论 2021-01-14 23:03:08
    下面文件中的SELINUX=permissive 重启虚拟机 安装mariadb-server 添加服务并启动 初始化数据库密码: (1) 启用二进制日志; (2) 设置一个在当前集群中惟一的server-id(主/从服务器的ID不能重复); 二进制...
  • 数据库复制详解

    千次阅读 2012-05-29 17:24:42
     为了解决数据同步,我们经常使用各种各样的导入导出程序,过程繁琐,下面将介绍数据库复制实现数据库同步,SqlServer数据库同步是项目中常用到的环节,若一个项目中的数据同时存在于不同的数据库服务器中,而这些...
  • SQL Server 复制数据库表的结构和数据

    千次阅读 2018-09-10 18:00:04
    1.SQL Server复制表的结构 ...----在目标数据库上右键----新建查询----将刚才复制的内容粘贴此处 ---注意:将USE后的数据库名字改为目标数据库名字 2.复制表的数据(将表的结构和数据一起复制过去) 表名...
  • 由于微服务分库导致无法跨库(忽略 db_name.table_name 方式)统计查询,因此利用 MySQL 主从复制的方式,将主服务器上的多个数据库同步从服务器上的单个数据库上,从库设置只读,仅用于统计查询。 假设主服务器上...
  • SQL Server 数据库 同步 复制

    千次阅读 2016-08-01 13:57:30
    时间周期范围可以任意设置在一分钟一个月之间, 是三种复制功能中最稳定的。 事物复制:通过实时监测数据库更新, 在每次 更新时对数据和数据库对象进行复制, 实时性能 最好, 但SQL Server个人版本无法提供...
  • 当然,可以用sql提供的可视化……解决掉下面是脚本方法:use 你要用的数据库 go if exists(select name from sysobjects where type='u' id=object_id('表名')) drop table 表名 go use 源库 go ...
  • MySQL 数据库主从复制架构

    千次阅读 多人点赞 2016-01-12 18:53:27
    前文《MySQL 数据库事务与复制》分析了 MySQL 复制过程中如何保证 binlog 和事务数据之间的一致性,本文进一步分析引入从库后需要保证主从的数据一致性需要考虑哪些方面。原生复制架构 MySQL 的原生复制架构原理如上...
  • Oracle 11gR2 使用RMAN Duplicate复制数据库 作者:吴伟龙 PrudentWoo QQ:286507175 前言: 上周刚做完一个项目,用户要求RAC的数据库能够自动备份另外一个单节点上,单节点能够正常拿起来就能用。当时跟他们...
  • SQL2005删除复制数据库的发布与订阅的方法    --在测试环境中恢复从正式数据库服务器上备份下来的bak文件后,正式环境里数据库复制的发布、订阅也被带进来了,结果恢复的数据库无法更改表结构,直接删除这些错误...
  • 经常在论坛中看到有人问数据同步的技术,如果只是同步少量的表,那么可以考虑使用链接服务器+触发器,来实现数据同步,但当要同步的数据表比较多,那么可以考虑用数据库复制技术,来实现数据的同步。 下面的环境是...
  • 工作中,我们经常需要把数据库进行分离,复制数据库到另一个地方,再将原数据库文件附加回数据库 。 当然通过鼠标操作的步骤比较麻烦: 1、 右键数据库 --------任务------分离 2、打开数据库文件所在目录,复制...
  • MySQL数据库实现主从复制

    千次阅读 2018-07-06 16:45:57
    配置主从复制 测试配置 参考资料 前言 我们用的在这篇文章《在CentOS上使用Nginx和Tomcat搭建高可用高并发网站》使用的只有一个MySQL数据库。 从安全角度来说这是非常不安全的,比如这个数据库服务器磁盘...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 336,421
精华内容 134,568
关键字:

复制数据库到下面