文章纯属个人体会和实践,如有错误,请转告于我。大家一起研究一下!
今天遇到一个问题,就是网站登录后台的时候,出错了,提示找不到admin表。但是在数据库的表中是能够看到的,只是表名略有不同。
先说说问题吧:
首先,网站是从别的服务器上转到这个服务器上的,我们都知道网站有数据库的,况且这个网站是SQL2005的数据库,也就是传到这个服务器上之后,我们要附加数据库,但是附加完毕之后,也就需要配置数据库。
然后我们需要进行新建这个数据库的账号和密码,但是默认原本数据库里面的账号就必须得删除,但是就在删除的时候,出错了!说是用户在架构中存在,我们大家都知道用户默认新建之后会出现在数据库的架构里面,所以要删除此用户,必须先要到架构里面删掉这个用户的架构。
但是,可惜的是在删除的时候,又出现了错误,也就是数据库的架构在admin的表中已经使用,也就是我在本文开始前的一句话,表名变了,默认的表名一般为dbo_admin ,但是此时的表名为用户名加admin,例如:“925cc_admin”就像这种格式。
所以,情况恶劣了,就是架构也删不掉,就意味着用户删不掉,也意味着现在的表也不能使用。理所当然的是先要修改表名。但是,表有很多,批量修改表名的命令是有,但是要与储存过程一起使用。
首当其冲的当然是要新建一个储存过程,但是百度不给力,搜了半天没有结果,根据公司网建加研发的一些人给经验,然后弄出来了。
解决办法 :
1、 首先在此数据库里面新建查询,直接复制下面的代码到查询窗口里面,点执行就可以了,代码如下:
if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[changename]')
and OBJECTPROPERTY(id, N'IsProcedure') = 1)
drop procedure [dbo].[changename]
GO
SET QUOTED_IDENTIFIER OFF
GO
SET ANSI_NULLS OFF
GO
Create PROCEDURE dbo.changename
@OldOwner as NVARCHAR(128),
@NewOwner as NVARCHAR(128)
AS
DECLARE @Name as NVARCHAR(128)
DECLARE @Owner as NVARCHAR(128)
DECLARE @OwnerName as NVARCHAR(128)
DECLARE curObject CURSOR FOR
select 'Name' = name,
'Owner' = user_name(uid)
from sysobjects
where user_name(uid)=@OldOwner
order by name
OPEN curObject
FETCH NEXT FROM curObject INTO @Name, @Owner
WHILE(@@FETCH_STATUS=0)
BEGIN
if @Owner=@OldOwner
begin
set @OwnerName = @OldOwner + '.' + rtrim(@Name)
exec sp_changeobjectowner @OwnerName, @NewOwner
end
FETCH NEXT FROM curObject INTO @Name, @Owner
END
close curObject
deallocate curObject
GO
SET QUOTED_IDENTIFIER OFF
GO
SET ANSI_NULLS ON
GO
2、执行完毕之后,也就是存储过程已经建立完毕,然后开始执行,下面的代码,复制之后,修改成你表中的名称,比如我以925cc_admin为例,代码如下:
exec Changename '925cc','dbo'
3、执行完这两段代码之后,在刷新一下数据库,此时数据库的表就显示为“dbo_admin”这样才算解决完毕。
其实文章到上面一段已经结束了,不过我还说一下吧!
这个被上传到这个服务器上的网站属于ASP的,所以他的配置文件在admin的conn文件和conn2文件里面配置。所以新建SQL用户和密码之后,在里面配置进去,就可以了。
今天由于iis出现错误,以为是iis错误就卸载了iis,在安装过程中碰到了一些问题,特将解决思路给大家分享下。
IIS卸载后重装时提示:
---------------------------
Windows 安装程序
---------------------------
安装程序无法复制一个或多个文件。特定错误码是 0xe0000233。按“确定”以继续;或者按“取消”,停止安装并且再试一次。如果继续,组件可能无法正常运行。
---------------------------
确定 取消
---------------------------
网上找的解决办法都是说没有删除干净,不过服务里iisadmin也没有了。进程里也没有,是删除干净了。服务器重启还是不行,最终我的解决办法是:
C:Inetpub 权限给everyone完全控制。OK,成功安装。
安装程序无法复制一个或多个文件。特定
错误码是 0xe0000233。按“确定”以继续;或者
按“取消”,停止安装并且再试一次。如果继续,
组件可能无法正常运行。
解决办法:
1.打开C/:Inetpub/AdminScripts,如果是上图的结果,那么服务器应该是做安全了。
2.在文件夹右键属性-安全,加入everyone 完全控制权限,在重新安装iis,问题解决。
不过安装到中间的时候又出现了这个提示,那么就可以推算可能是c盘的安全设置导致权限问题。
执行如下命令即可:
将C盘NTFS权限还原为默认
1.windows主机如何远程登录
点本地电脑开始》运行》输入mstsc点确定,
弹出远程连接的框输入IP连接,
连接上然后输入用户名和密码就可远程登录服务器
1、首先请保证您的备份文件是bak文件,并且备份文件能够正常还原。 2、打开“企业管理器”→“数据库”,选择您要还原的数据库,右键“所有任务”→“还原数据库”。如图:
|
方法1:
新建一个文件111.asp (文件名可以自己随便改但是要asp类型的)
写入如下代码:
<!–#include file=”../inc/npoint.asp”–>
<%
htm = htm&(npoint(“123456″))
%>
在浏览器上浏览这个文件就会输出
C268FCBA82EB680D988556E8BB218F
输出这串字符串就是123456经过加密后的字符串 至于是什么加密法我不懂
然后打开
/host_date/#host # date#196.mdb
然后打开adminlogo的表
将其pass字段修改成输出的那串字符串例如这里用的是123456经过加密之后就成了:C268FCBA82EB680D988556E8BB218F
密码就是:123456 了
在N点使用过程中,可能会出现无法开通空间并且报错的情况。原因可能是这个软件本身问题,或者客户进行了某些不恰当的操作造成,一时无法修复。为了尽快处理问题,我们只能选择重装这个软件。如何才能恢复N点功能,并且能尽可能保持原来的网站信息呢?下面是具体操作步骤。
1、备份N点系统文件夹,具体路径是C:\Program Files\NpointSoft\npointhost1.9.6\web,我们双击进入web文件夹,把里面的文件整体打包成一个rar文件,再把这个rar文件转移到桌面上。
选择下载“Sql Server 2005 标准版”下载,选择好本地保存路径,点击“开始下载”,下载完后你会在您选择“本地保存”的路径看到“cs_sql_2005_std_x86_dvd.rar(64位为cs_sql_2005_std_x64_dvd.rar)”并解压。?xml:namespace>
首先请选择下载“Sql Server 2000 标准版”下载,选择好本地保存路径,点击“开始下载”,下载完后你会在您选择“本地保存”的路径看到“sc_sql_2000_std.rar”并解压。 “sc_sql_2000a_std”文件夹是Sqlserver 2000 的安装文件,“sc_sql_server_2000_sp4”文件夹是Sp4补丁安装文件,进入sc_sql_2000a_std文件夹,找到“autorun.exe”文件并执行: X86系统: 点击继续,如果是64位的系统,你点击“autorun.exe”文件执行时会看到:
|