Session 保存到SQL的解决过程

原创 2007年10月11日 10:32:00
先要找到Microsoft.NET/Framework/v1.1.4322  文件夹下面的InstallSqlState.sql这个文件,之后使用SQLServer查询分析器执行,执行之后报告成功,之后在执行下v2.0.50727文件夹里的InstallSqlState.sql之后会报错,我们不用管他之后你会发现数据库里会多出一个数据库 ASPState 这个库里面是没有表的,我们不用管他,但是请确保里面有24个存储过程,(再次注意ASPState这里面是没有表的)可是要是没有表的话我们的Session值放在什么地方呢?别着急我们来查看一下系统数据库当中的这个tempdb 数据库之后会发现里面多出两张表 ASPStateTempApplications,ASPStateTempSessions这两张表是用来存储Session值的。请确保ASPStateTempApplications这个表里有2个字段,ASPStateTempSessions确保里面只有十一个字段。之下来我们来看一下SQL Server代理来看一下,点击作业查看是否有个ASPState_Job_DeleteExpiredSessions名字的作业,这个作业是用来处理过期的Session的,这个我们不用管他。这样我们第一步就完成了!
更改Web.Config 配置文件,在<system.web>节点当中添加<sessionState mode="SQLServer"sqlConnectionString="datasource=192.168.1.110;uid=sa;password=sa" cookieless="false" timeout="200" />如果配置文件当中已经拥有这个配置节点的话只需要按照格式来修改就可以了!修改完之后程序当中的Session值就自动保存到服务器了!但是因为我们装的是1.1 InstallSqlState.sql所以会有问题,(因为服务器装的是2.0)那么我们现在来解决这个问题。
首先我们要配置给SQL装上ASP.NET 2.0 版会话状态功能那么我们最先需要的是配置个用户权限。首先在最高管理员权限组里面找到NETWORK SERVICE并且添加到管理员组里面,之后打开SQL Server查询分析器在安全性—登录名里面添加NETWORK SERVICE之后把他的权限配置成最高,让他有权安装ASP.NET 2.0 版会话状态功能,之前的准备工作完成了!那么我们可以接下来的工作了,也是较为主要的工作,添加ASP.NET 2.0版会话功能。我们只需要把如下代码SqlServices.InstallSessionState("数据库地址",null,SessionStateType.Persisted);别忘记命名空间哦:using System.Web.Management;之后运行下这个程序。之后就OK了!你现在就可以运行有Session值的页面了,之后在去ASPState库里面看下这表里的数据吧!你会发现多出你存的Session值了!但是值是加密的哦!你是看不到的哦!
成功之后你就可以把安装的那段代码去掉了!现在来调试你的数据吧! 

PHP实战之直播工作过程

-
  • 1970年01月01日 08:00

用数据库保存Session及创建ASPState数据库时出现的问题

sessionState 使用 SQLServer 模式: 在运行 SQL Server 的计算机(将存储会话状态)上运行 InstallSqlState.sql(默认安装在 :\systemr...
  • ltylove2007
  • ltylove2007
  • 2016-06-23 10:43:42
  • 1341

进程外Session | 状态服务器Session 和 数据库Session的设置

介绍我们知道,当浏览器关闭,或者网站重启的时候,会话就结束了。即Seesion就丢失了。(当Web.config配置文件改动,哪怕什么内容都不加,仅仅往配置文件中加一个空格都是改we.config变配...
  • Fanbin168
  • Fanbin168
  • 2015-10-18 15:22:45
  • 3005

将 Session 数据存入数据库

将 Session 数据存入数据库 由于Session数据数组是附带一个Session ID保存在用户cookie里的,你无法验证它,除非你把session数据存储在数据库中。在一些不需要或很少...
  • zhanghao143lina
  • zhanghao143lina
  • 2016-11-03 16:19:39
  • 3048

将Session保存在SqlServer中

  以前做过,长时间不搞就忘了。昨天忽然有了这个需求,花了一天时间终于又搞清楚了方法,在这里做一个备忘。  首先需要安装用于存放会话的数据库,当然,MS在.net Framework中已经提供了现成的...
  • gaofeng2000
  • gaofeng2000
  • 2007-10-20 17:00:00
  • 1127

如何把session存储到数据库里

aspnet中,session默认以inproc模式存储,也就是保存在iis进程中, 这样有个优点就是效率高,但不利于为本负载均衡扩展。 可以把session信息保存在SQL Server中, ...
  • luyaran
  • luyaran
  • 2016-11-11 08:51:45
  • 400

[ASP.NET] Session 详解 sessionState 存储位置

本文仅代表作者个人观点,正确与否请读者自行研究! 原文地址:http://www.frontfree.net/view/article_742_page1.html 阅读本文章之前的准备   阅...
  • ranbolwb
  • ranbolwb
  • 2013-06-09 16:37:00
  • 1736

ASP.NET 状态服务 及 session丢失问题解决方案总结

 最近在开发一ASP.NET2.0系统时,在程序中做删除或创建文件操作时,出现session丢失问题。在网上搜了不少资料,最后终于解决了,采用了如下方法:1、asp.net Session的实现:as...
  • High_Mount
  • High_Mount
  • 2007-05-09 14:57:00
  • 8707

Session 保存到SQL的解决过程

先要找到Microsoft.NET/Framework/v1.1.4322  文件夹下面的InstallSqlState.sql这个文件,之后使用SQLServer查询分析器执行,执行之后报告成功,之...
  • lgy_mc
  • lgy_mc
  • 2007-10-11 10:32:00
  • 540

ASP.NET 中 Session 实现原理浅析 [2] 状态管理器

状态管理本来是一件很美好的事情,嘿嘿,只可惜总是有些厂商在实现的时候考虑得不那么周全。例如 MS 在 ASP 中的状态管理实现就比较烂,因为只实现了一个进程内的基于内存的状态管理,故而存在很多问题: ...
  • louisp
  • louisp
  • 2005-08-08 17:53:00
  • 677
收藏助手
不良信息举报
您举报文章:Session 保存到SQL的解决过程
举报原因:
原因补充:

(最多只允许输入30个字)