首页 > 编程技术 > php

如何转移SQL SERVER数据库

发布时间:2016-11-25 16:44

我用的是SQL server 6.5,(刚刚用,新手啦),原来放数据库的服务器要更换,请问如何转移?手边的这本书和我的操作界面不一样,很让我生气!我基本思路是这样的:先备份数据库----有了*.dat文件---在另一台机器上设置设备、库、表(将*.sql文件用isql生成表结构)---用restore恢复(应该是恢复表的内容)。
可做到最后一步,restore按钮总也不亮,不知我的思路可有错误,现在问题应该怎么解决,请大侠们出手相助!!!
azury (来自 202.111.130.166) 于 99-5-19 上午 11:58:10 加贴在 SQL数据库:
1 . 原有数据库服务器不要动。
2 . 重新安装一个Sql Server 服务器。
3 . 安装完毕在 Enterprise manager 中将两个服务器都映象进来
(其实,就是Register两个)
3 . 选择要转移的数据库
4 . 菜单中选Tools --> Database Backup/Restore
5 . 设置源/目的以及其他参数
6 . 进行转移(非常快)
试试吧。
  :)
露茜 (来自 202.111.130.166) 于 99-5-19 上午 11:56:52 加贴在 SQL数据库:
然后再把原来的目录全部拷过来,覆盖现有的文件就可以了
不过我也是听说的,没有试过,azury姐姐可能会有比较好的办法,但是她的方法可能会使数据出现一些错误
小懒 (来自 202.111.130.166) 于 99-5-19 下午 12:00:54 加贴在 SQL数据库:
在enterprise manager中的菜单--TOOL--DATABASE/OBJECT TRANSFER
选择原来的sql server服务器和库是source
destination就是你现在的server和database
visitor (来自 210.72.252.34) 于 99-5-19 下午 04:16:49 加贴在 SQL数据库:
MS在6.5升级到7.0时问题多多.
给他们的工程师打过电话,
至今也没能提供一个简便/可靠的方案.
若非不得以,
还是在7.0上从头开始吧!

当您怀疑计算机硬件是影响SQL Server运行性能的主要原因时,可以通过SQL Server Performance Monitor监视相应硬件的负载,以证实您的猜测并找出系统瓶颈。下文将介绍一些常用的分析对象及其参数。
Memory: Page Faults / sec
  如果该值偶尔走高,表明当时有线程竞争内存。如果持续很高,则内存可能是瓶颈。
Process: Working Set
  SQL Server的该参数应该非常接近分配给SQL Server的内存值。在SQL Server设定中,如果将"set working set size"置为0, 则Windows NT会决定SQL Server的工作集的大小。如果将"set working set size"置为1,则强制工作集大小为SQLServer的分配内存大小。一般情况下,最好不要改变"set working set size"的缺省值。
Process:%Processor Time
  如果该参数值持续超过95%,表明瓶颈是CPU。可以考虑增加一个处理器或换一个更快的处理器。
Processor:%Privileged Time
  如果该参数值和"Physical Disk"参数值一直很高,表明I/O有问题。可考虑更换更快的硬盘系统。另外设置Tempdb in RAM,减低"max async IO","max lazy writer IO"等措施都会降低该值。
Processor:%User Time
  
  表示耗费CPU的数据库操作,如排序,执行aggregate functions等。如果该值很高,可考虑增加索引,尽量使用简单的表联接,水平分割大表格等方法来降低该值。
Physical Disk:Avg.Disk Queue Length
  该值应不超过磁盘数的1.5~2倍。要提高性能,可增加磁盘。
  注意:一个Raid Disk实际有多个磁盘。
SQLServer:Cache Hit Ratio
该值越高越好。如果持续低于80%,应考虑增加内存。
 注意该参数值是从SQL Server启动后,就一直累加记数,所以运行经过一段时间后,该值将不能反映系统当前值。

Hi, everyone:
    本贴讨论SELECT TOP N问题.
    现在正在一家计算机公司兼职,开发ASP应用. 在最近的一个商业项目里有这样一个需求:用户在查询时,只需要按照某(些)列排序后TOP 20的纪录. SQL SERVER 7很好地支持了TOP N 操作,但考虑到系统移植问题, 我又考虑在其他几个主流DBMSs中如何实现. 鉴于只有DB2 UDB 7,ORACLE 8i,SQL SERVER 7,本贴仅讨论这三个DBMS.
    简单地说,TOP N问题就是:在SELECT中,仅选择按照某(些)列排序后TOP N的纪录. 考虑到等值问题,又可以分为两种: 一是仅仅返回N条纪录(M 1), 二是还包括所有于第N条等值的纪录(M 2). 当然最内层的子查询也可以有其他的子句, 或者TOP N也可以应用在没有ORDER BY的情况下,这样更简单.
1. SQL SERVER 7: 用 TOP N (WITH TIES)
M1:
SELECT TOP N * FROM MYTABLE ORDER BY ORD_COL;
M2:
SELECT TOP N    WITH TIES * FROM MYTABLE ORDER BY ORD_COL;
注: SQL SERVER 7提供了PERCENT N WITH TIES, ACCESS 中提供了TOP N,但含义是M 2.
2. ORACLE 8i: 用 ROWNUM<=N
M1:
SELECT * FROM
     ( SELECT * FROM MYTABLE ORDER BY ORD_COL DESC)
WHERE ROWNUM<=N
M2:
SELECT * FROM MYTABLE WHERE ORD_COL>=
     (SELECT MIN(ORD_COL) FROM
        ( SELECT * FROM MYTABLE ORDER BY ORD_COL DESC)
    WHERE ROWNUM<=N)
ORDER BY ORD_COL DESC
注意以下两种错误用法:
WRONG 1:
SELECT * FROM MYTABLE
WHERE    ROWID<=N
ORDER BY ORD_COL DESC;
WRONG 2:(因为WHERE ROWNUM<=N 在ORDER BY 前执行)
SELECT * FROM MYTABLE
WHERE    ROWNUM<=N
ORDER BY ORD_COL DESC;
3: DB2
用FETCH FIRST N ROWS ONLY
M1:
SELECT * FROM MYTABLE
ORDER BY ORD_COL DESC
FETCH FIRST N ROWS ONLY
M2:
没有找到,因为DB2不允许在FROM中嵌套有ORDER BY子句的子查询.
还不清楚ORACLE的M 2有没有更好的办法,以及其他的DBMS如何实现TOP N操作,请其他朋友补充.
前一段时间,发表了一编安装mysql的文章,结果有很多的朋友来问相关的问题。(太多了,应付不了)
1. 关于在其他目录安装mysql
ljf@sinonets.net.cn的朋友问:
我在win 2000下安装 mysql-shareware-3.22.32-win,希望改变路径,如d:win32appmysql但导致mysql服务无法启动,改变:d:my.cnf文件里所有相关路径为d:win32appmysql也不行
方法如下:
如你把目录转移就要这样来启动mysql
D:win32appmysqlinmysqld --basedir D:win32appmysql
net start mysql
2.从旧的版本升级
windymail@sina.com的朋友问:
我按照您的文章 win2000下安装mysql-shareware-3.22.32-win时遇到几个问题想请教您一下
我在运行c;mysqlinmysql-shareware --install时出现了failed to service 的信息
我以前安装的是3.11的版本
方法如下
请把原 3.11 的文件和reg里关于它的东西完全清除。然后再安装.
在清除之前要把你的 mysql 停止(
net stop mysql
mysqladmin --user=root --password=your password shutdown
),否则的话~~~~~
3.mysql的数据库在那里??LINUX那里吗?
dao,mysql安装在win2000上那数据库当然是在……
4.那里可以下载?
在这里就有啊
我的
e-mail:freeboy@popsun.com
欢迎来韶关热线找我讨论关于服务器和asp的问题。在bbs或者chitchat都可以找到。我的ID是freeboy。到了就说找网管就OK了。
XDR不会不知道吧?就是简化的XML-Data啦。现在示范一个如何实现这样的查询
SELECT o.OrderID, o.OrderDate from Orders o, Customers c,
WHERE o.CustomerID = c.CustomerID and c.CompanyName = ?
Code:
<%@ Language=VBScript %>
<%
Dim sConn
sConn = "Provider=SQLOLEDB; Data Source=(local); Initial Catalog=Northwind; User ID=SA;Password=;"

Dim adoConn
Set adoConn = Server.CreateObject("ADODB.Connection")
adoConn.ConnectionString = sConn
adoConn.CursorLocation = 3 'adUseClient
adoConn.Open

Dim adoCmd
Set adoCmd = CreateObject("ADODB.Command")
Set adoCmd.ActiveConnection = adoConn
adoCmd.CommandText = "Customer[@CompanyName=""Tortuga Restaurante""]"
adoCmd.Dialect = "{ec2a4293-e898-11d2-b1b7-00c04f680c56}"

adoCmd.Properties("Mapping Schema") = "Orders.xml"
adoCmd.Properties("Base Path") = "C:INETPUBWWWROOTPBA"
adoCmd.Properties("Output Stream") = Response

Response.write "<XML ID='MyDataIsle'>"
adoCmd.Execute , , 1024 'adExecuteStream
Response.write "</XML>"
%>
Result:
<XML ID="MyDataIsle">
<Customer CustomerID="TORTU" CompanyName="Tortuga Restaurante">
<Order CustomerID="TORTU" OrderID="10276" OrderDate="1996-08-08T00:00:00" />
<Order CustomerID="TORTU" OrderID="10293" OrderDate="1996-08-29T00:00:00" />
<Order CustomerID="TORTU" OrderID="10304" OrderDate="1996-09-12T00:00:00" />
<Order CustomerID="TORTU" OrderID="10319" OrderDate="1996-10-02T00:00:00" />
<Order CustomerID="TORTU" OrderID="10518" OrderDate="1997-04-25T00:00:00" />
标签:[!--infotagslink--]

您可能感兴趣的文章: