<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>FineReport报表官网—专业Web报表软件 &#187; 安装部署</title>
	<atom:link href="http://www.finereport.com/category/knowledge/install/feed" rel="self" type="application/rss+xml" />
	<link>http://www.finereport.com</link>
	<description>一款高效易用的类Excel、纯Java报表工具，集数据展示(报表)、数据查询(参数)和数据录入(填报)于一身，是制作复杂中式报表的首选商业报表软件。</description>
	<lastBuildDate>Wed, 01 Sep 2010 02:47:25 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>IIS集成——使用FineReport_IIS 安装包</title>
		<link>http://www.finereport.com/knowledge/install/iis_3.html</link>
		<comments>http://www.finereport.com/knowledge/install/iis_3.html#comments</comments>
		<pubDate>Tue, 06 Jul 2010 07:23:47 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[安装部署]]></category>
		<category><![CDATA[IIS服务器]]></category>
		<category><![CDATA[报表安装部署]]></category>
		<category><![CDATA[报表教程]]></category>

		<guid isPermaLink="false">http://www.finereport.com/CN/wordpress/knowledge/install/iis%e9%9b%86%e6%88%90%e2%80%94%e2%80%94%e4%bd%bf%e7%94%a8finereport_iis-%e5%ae%89%e8%a3%85%e5%8c%85.html</guid>
		<description><![CDATA[IIS简介：
Internet Information Server的缩写为（IIS）是一个World Wide Web server。Gopher server和FTP server全部包容在里面。 IIS意味着你能发布网页，并且有ASP（Active Server Pages）、JAVA、VBscript产生页面，有着一些扩展功能。IIS支持一些有趣的东西，像有编辑环境的界面（FRONTPAGE）、有全文检索功能的（INDEX SERVER）、有多媒体功能的（NET SHOW）。ASP.net与IIS服务器集成后就可以发布相应的ASP网站。

IIS集成：
我们通过两种服务器的整合就可以将FineReport工程与.net工程进行无缝集成。以FineReport自带的工程WebReport为例，先将WebReport工程与可以解析jsp,servlet的服务器集成（例如WebSphere,Tomcat等服务器），然后对服务器与可以解析asp的服务器（例如IIS服务器）进行整合。
FineReport_IIS安装包：
FineReport_IIS安装包是FineReport公司专门制作的能直接与已有的IIS服务器进行无缝集成的软件安装包，在安装设计器软件的同时，完成与IIS服务器集成的配置工作，免去诸多烦琐的操作。
使用FineReport_IIS安装包安装软件并与IIS集成：
1.	确认已装有IIS：一般Win2003服务器为IIS6.0，WinXP个人机为IIS5.1。若计算机中还未装有IIS服务器，则可到官方网站下载并安装。
2.	使用FineReport_IIS安装包安装软件
双击FineReport_IIS.exe，进行安装。软件的安装，与其他FineReport安装包相同，可按照需求选择安装路径进行安装。IIS集成，安装完软件后，会弹出如下对话框要求为IIS服务器添加筛选器，点击“是”：

安装完毕，重启计算机。
注：重启计算机的目的是为了重启IIS服务，也可选择“稍后重启”，不进行重启操作，此时打开控制面板&#124;管理工具&#124;服务找到IIS  Admin Service服务，手动进行重启，效果相同。
3.	浏览模板：
安装完毕后，即可按照习惯的访问路径访问FineReport报表了。
在浏览器中输入：
http://localhost/WebReport/ReportServer?reportlet=/demo/basic/post.cpt
即可看到如下页面：

]]></description>
			<content:encoded><![CDATA[<p><b>IIS简介：</b></p>
<p>Internet Information Server的缩写为（IIS）是一个World Wide Web server。Gopher server和FTP server全部包容在里面。 IIS意味着你能发布网页，并且有ASP（Active Server Pages）、JAVA、VBscript产生页面，有着一些扩展功能。IIS支持一些有趣的东西，像有编辑环境的界面（FRONTPAGE）、有全文检索功能的（INDEX SERVER）、有多媒体功能的（NET SHOW）。ASP.net与IIS服务器集成后就可以发布相应的ASP网站。</p>
<p><span id="more-2004"></span></p>
<p><b>IIS集成：</b></p>
<p>我们通过两种服务器的整合就可以将FineReport工程与.net工程进行无缝集成。以FineReport自带的工程WebReport为例，先将WebReport工程与可以解析jsp,servlet的服务器集成（例如WebSphere,Tomcat等服务器），然后对服务器与可以解析asp的服务器（例如IIS服务器）进行整合。</p>
<p><b>FineReport_IIS安装包：</b></p>
<p>FineReport_IIS安装包是FineReport公司专门制作的能直接与已有的IIS服务器进行无缝集成的软件安装包，在安装设计器软件的同时，完成与IIS服务器集成的配置工作，免去诸多烦琐的操作。</p>
<p><b>使用FineReport_IIS安装包安装软件并与IIS集成：</b></p>
<p>1.	确认已装有IIS：一般Win2003服务器为IIS6.0，WinXP个人机为IIS5.1。若计算机中还未装有IIS服务器，则可到官方网站下载并安装。</p>
<p>2.	使用FineReport_IIS安装包安装软件</p>
<p>双击FineReport_IIS.exe，进行安装。软件的安装，与其他FineReport安装包相同，可按照需求选择安装路径进行安装。IIS集成，安装完软件后，会弹出如下对话框要求为IIS服务器添加筛选器，点击“是”：<br />
<img class="centered"  src="http://www.finereport.com/CN/wordpress/wp-content/uploads/images/iis_3_1.png" alt="添加筛选器"></p>
<p>安装完毕，重启计算机。</p>
<p>注：重启计算机的目的是为了重启IIS服务，也可选择“稍后重启”，不进行重启操作，此时打开控制面板|管理工具|服务找到IIS  Admin Service服务，手动进行重启，效果相同。</p>
<p>3.	浏览模板：<br />
安装完毕后，即可按照习惯的访问路径访问FineReport报表了。<br />
在浏览器中输入：<br />
<em>http://localhost/WebReport/ReportServer?reportlet=/demo/basic/post.cpt</em><br />
即可看到如下页面：<br />
<img class="centered"  src="http://www.finereport.com/CN/wordpress/wp-content/uploads/images/iis_3_2.jpg" alt="浏览报表模版"></p>
]]></content:encoded>
			<wfw:commentRss>http://www.finereport.com/knowledge/install/iis_3.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>IIS集成配置</title>
		<link>http://www.finereport.com/knowledge/install/iis_2.html</link>
		<comments>http://www.finereport.com/knowledge/install/iis_2.html#comments</comments>
		<pubDate>Tue, 06 Jul 2010 07:22:17 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[安装部署]]></category>
		<category><![CDATA[IIS服务器]]></category>
		<category><![CDATA[报表安装部署]]></category>
		<category><![CDATA[报表教程]]></category>

		<guid isPermaLink="false">http://www.finereport.com/CN/wordpress/knowledge/install/iis%e9%9b%86%e6%88%90%e9%85%8d%e7%bd%ae.html</guid>
		<description><![CDATA[IIS简介：
Internet Information Server的缩写为（IIS）是一个World Wide Web server。Gopher server和FTP server全部包容在里面。 IIS意味着你能发布网页，并且有ASP（Active Server Pages）、JAVA、VBscript产生页面，有着一些扩展功能。IIS支持一些有趣的东西，像有编辑环境的界面（FRONTPAGE）、有全文检索功能的（INDEX SERVER）、有多媒体功能的（NET SHOW）。ASP.net与IIS服务器集成后就可以发布相应的ASP网站。

IIS集成：
我们通过两种服务器的整合就可以将FineReport工程与.net工程进行无缝集成。以FineReport自带的工程WebReport为例，先将WebReport工程与可以解析jsp,servlet的服务器集成（例如WebSphere,Tomcat等服务器），然后对服务器与可以解析asp的服务器（例如IIS服务器）进行整合。
IIS集成配置：
1.	复制插件：将FRFilter文件夹拷贝至IIS所在的服务器上的任意目录，如C:\FRFilter 。 该文件夹中包涵IsapiRewrite4.dll ，IsapiRewrite4.ini两个文件。前者为ISAPI筛选器。
2.	修改IsapiRewrite4.ini配置设置：打开配置文件，修改应用服务器端口，如下图：

3.	IIS服务器添加筛选器：打开控制面板&#124;管理工具-Internet信息服务，右击网站，选择属性，添加一ISAPI筛选器，筛选器名称任意，如命名为FRFilter，可执行文件选择IsapiRewrite4.dll，如下图：
4.	配置完成，重启IIS服务器：
5.	启动应用服务器如tomcat：
6.	浏览报表：在浏览其中输入地址如:
http://localhost/WebReport/ReportServer/reportlet=/com/doc/cross.cpt 即可访问报表。
]]></description>
			<content:encoded><![CDATA[<p><b>IIS简介：</b></p>
<p>Internet Information Server的缩写为（IIS）是一个World Wide Web server。Gopher server和FTP server全部包容在里面。 IIS意味着你能发布网页，并且有ASP（Active Server Pages）、JAVA、VBscript产生页面，有着一些扩展功能。IIS支持一些有趣的东西，像有编辑环境的界面（FRONTPAGE）、有全文检索功能的（INDEX SERVER）、有多媒体功能的（NET SHOW）。ASP.net与IIS服务器集成后就可以发布相应的ASP网站。</p>
<p><span id="more-2003"></span></p>
<p><b>IIS集成：</b></p>
<p>我们通过两种服务器的整合就可以将FineReport工程与.net工程进行无缝集成。以FineReport自带的工程WebReport为例，先将WebReport工程与可以解析jsp,servlet的服务器集成（例如WebSphere,Tomcat等服务器），然后对服务器与可以解析asp的服务器（例如IIS服务器）进行整合。</p>
<p><b>IIS集成配置：</b></p>
<p>1.	复制插件：将FRFilter文件夹拷贝至IIS所在的服务器上的任意目录，如C:\FRFilter 。 该文件夹中包涵IsapiRewrite4.dll ，IsapiRewrite4.ini两个文件。前者为ISAPI筛选器。</p>
<p>2.	修改IsapiRewrite4.ini配置设置：打开配置文件，修改应用服务器端口，如下图：<br />
<img class="centered"  src="http://www.finereport.com/CN/wordpress/wp-content/uploads/images/iis_2_1.png" alt="修改应用服务器端口"></p>
<p>3.	IIS服务器添加筛选器：打开控制面板|管理工具-Internet信息服务，右击网站，选择属性，添加一ISAPI筛选器，筛选器名称任意，如命名为FRFilter，可执行文件选择IsapiRewrite4.dll，如下图：<img class="centered"  src="http://www.finereport.com/CN/wordpress/wp-content/uploads/images/iis_2_2.jpg" alt="iis服务器添加筛选器"></p>
<p>4.	配置完成，重启IIS服务器：</p>
<p>5.	启动应用服务器如tomcat：</p>
<p>6.	浏览报表：在浏览其中输入地址如:<br />
<em>http://localhost/WebReport/ReportServer/reportlet=/com/doc/cross.cpt</em> 即可访问报表。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.finereport.com/knowledge/install/iis_2.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>IIS服务器集成</title>
		<link>http://www.finereport.com/knowledge/install/iis_1.html</link>
		<comments>http://www.finereport.com/knowledge/install/iis_1.html#comments</comments>
		<pubDate>Tue, 06 Jul 2010 07:19:35 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[安装部署]]></category>
		<category><![CDATA[IIS服务器]]></category>
		<category><![CDATA[报表安装部署]]></category>
		<category><![CDATA[报表教程]]></category>

		<guid isPermaLink="false">http://www.finereport.com/CN/wordpress/knowledge/install/iis%e6%9c%8d%e5%8a%a1%e5%99%a8%e9%9b%86%e6%88%90.html</guid>
		<description><![CDATA[IIS简介：
Internet Information Server的缩写为（IIS）是一个World Wide Web server。Gopher server和FTP server全部包容在里面。 IIS意味着你能发布网页，并且有ASP（Active Server Pages）、JAVA、VBscript产生页面，有着一些扩展功能。IIS支持一些有趣的东西，像有编辑环境的界面（FRONTPAGE）、有全文检索功能的（INDEX SERVER）、有多媒体功能的（NET SHOW）。ASP.net与IIS服务器集成后就可以发布相应的ASP网站。

IIS5.1与IIS6.0的区别：
一般IIS5.1是适用于Winxp的，而IIS6.0适用于Win2003，如果个人做测试用或有其他需求可以选择IIS5.1，如果是作为服务器用的话，就用IIS6.0。
IIS集成：
我们通过两种服务器的整合就可以将FineReport工程与.net工程进行无缝集成。以FineReport自带的工程WebReport为例，先将WebReport工程与可以解析jsp,servlet的服务器集成（例如WebSphere,Tomcat等服务器），然后对服务器与可以解析asp的服务器（例如IIS服务器）进行整合。
win2003 32位系统上的Tomcat和IIS6集成：
Tomcat用来和FineReport的工程WebReport集成，IIS6（Internet Informatica Server）是可以发布解析ASP等网页的服务器。这里我们只说明部署好应用工程的Tomcat如何与IIS服务器进行整合的，有关如何在Tomcat部署工程可以参考系统集成——服务器中的Tomcat服务器章节，IIS6可以参考微软官方网站相关内容。
1.下载插件isapi_redirector2.dll，插件的作用是可以使Tomcat和FineReport进行通讯，插件的下载地址http://archive.apache.org/dist/tomcat/tomcat-connectors/jk2/binaries/win32/。解压缩得到isapi_redirector2.dll，创建文件夹C:/jakarta（创建路径任意）,放置isapi_redirector2.dll。 
2.使用记事本创建3个文件，分别为workers2.properties、jk2.properties和jakarta.reg（这个文件的名字可以随便起，但要以“.reg”为后缀名）。 这3个文件的内容分别如下： 
注：如果8009端口没被占用，请不要改变端口号。localhost可以改成域名，如果改变需要对相应文件进行设置，这里不做讨论。
以上workers2.properties、jk2.properties两个文件放置到%Tomcat_Home%/conf文件夹中。
3.jakarta.reg可放于任意目录下，在这为便于管理与isapi_redirector2.dll插件放于同一目录下，即c:/jakarta。 双击jakarta.reg文件将内容导入注册表。
4.应用isapi_redirector2.dll通讯插件。
打开管理工具&#124;Internet信息服务(IIS)管理器，右击下拉树中的默认网站，点击属性，选择ISAPI筛选器，添加筛选器，名称为jakarta，可执行文件选择C:\jakstarta\isapi_redirector2.dll ，点击确定。
	右击默认网站，新建“虚拟目录”，别名填jakarta，下一步，路径选为你的isapi_redirector2.dll存放的目录，即C:/jakarta，在下一步中的权限记得把“执行”打勾。
注：如果刚建立的jakarta筛选器的状态的图标不是,请注意上述配置过程有没有错误和遗漏。 
5.选择网站下面Web服务扩展，添加一个新的Web服务扩展，扩展名取为tomcat（扩展名可以任意取），要求的文件选择C:\jakarta\isapi_redirector2.dll。选择设置扩展状态，确定。如图。(windows2003系统中需要设置这一步) 
6.重启Tomcat和IIS，打开浏览器，输入http://localhost/WebReport/ReportServer?reportlet=/demo/basic/post.cp t ，如果看到下图所示，说明配置成功。
注：服务器访问的默认路径为Tomcat服务器设置的默认路径，可对Tomcat服务器进行设置改变默认路径。另假如要将报表工程和已存在的工程进行整合，请将工程文件放置一起，并设置tomcat和iis服务器的默认路径。 
]]></description>
			<content:encoded><![CDATA[<p><b>IIS简介：</b></p>
<p>Internet Information Server的缩写为（IIS）是一个World Wide Web server。Gopher server和FTP server全部包容在里面。 IIS意味着你能发布网页，并且有ASP（Active Server Pages）、JAVA、VBscript产生页面，有着一些扩展功能。IIS支持一些有趣的东西，像有编辑环境的界面（FRONTPAGE）、有全文检索功能的（INDEX SERVER）、有多媒体功能的（NET SHOW）。ASP.net与IIS服务器集成后就可以发布相应的ASP网站。</p>
<p><span id="more-2002"></span></p>
<p><b>IIS5.1与IIS6.0的区别：</b></p>
<p>一般IIS5.1是适用于Winxp的，而IIS6.0适用于Win2003，如果个人做测试用或有其他需求可以选择IIS5.1，如果是作为服务器用的话，就用IIS6.0。</p>
<p><b>IIS集成：</b></p>
<p>我们通过两种服务器的整合就可以将FineReport工程与.net工程进行无缝集成。以FineReport自带的工程WebReport为例，先将WebReport工程与可以解析jsp,servlet的服务器集成（例如WebSphere,Tomcat等服务器），然后对服务器与可以解析asp的服务器（例如IIS服务器）进行整合。</p>
<p><b>win2003 32位系统上的Tomcat和IIS6集成：</b></p>
<p>Tomcat用来和FineReport的工程WebReport集成，IIS6（Internet Informatica Server）是可以发布解析ASP等网页的服务器。这里我们只说明部署好应用工程的Tomcat如何与IIS服务器进行整合的，有关如何在Tomcat部署工程可以参考系统集成——服务器中的Tomcat服务器章节，IIS6可以参考微软官方网站相关内容。</p>
<p>1.下载插件isapi_redirector2.dll，插件的作用是可以使Tomcat和FineReport进行通讯，插件的下载地址http://archive.apache.org/dist/tomcat/tomcat-connectors/jk2/binaries/win32/。解压缩得到isapi_redirector2.dll，创建文件夹C:/jakarta（创建路径任意）,放置isapi_redirector2.dll。 </p>
<p>2.使用记事本创建3个文件，分别为workers2.properties、jk2.properties和jakarta.reg（这个文件的名字可以随便起，但要以“.reg”为后缀名）。 这3个文件的内容分别如下： <img class="centered"  src="http://www.finereport.com/CN/wordpress/wp-content/uploads/images/iis_1_1.png" alt="报表文件"></p>
<p>注：如果8009端口没被占用，请不要改变端口号。localhost可以改成域名，如果改变需要对相应文件进行设置，这里不做讨论。<img class="centered"  src="http://www.finereport.com/CN/wordpress/wp-content/uploads/images/iis_1_2.png" alt="报表文件"></p>
<p>以上workers2.properties、jk2.properties两个文件放置到%Tomcat_Home%/conf文件夹中。<img class="centered"  src="http://www.finereport.com/CN/wordpress/wp-content/uploads/images/iis_1_3.png" alt="报表文件"></p>
<p>3.jakarta.reg可放于任意目录下，在这为便于管理与isapi_redirector2.dll插件放于同一目录下，即c:/jakarta。 双击jakarta.reg文件将内容导入注册表。</p>
<p>4.应用isapi_redirector2.dll通讯插件。<br />
打开<b>管理工具|Internet信息服务(IIS)管理器</b>，右击下拉树中的默认网站，点击属性，选择ISAPI筛选器，添加筛选器，名称为jakarta，可执行文件选择C:\jakstarta\isapi_redirector2.dll ，点击确定。<img class="centered"  src="http://www.finereport.com/CN/wordpress/wp-content/uploads/images/iis_1_4.png" alt="添加编辑筛选器"><br />
	右击默认网站，新建“虚拟目录”，别名填jakarta，下一步，路径选为你的isapi_redirector2.dll存放的目录，即C:/jakarta，在下一步中的权限记得把“执行”打勾。<img class="centered"  src="http://www.finereport.com/CN/wordpress/wp-content/uploads/images/iis_1_5.png" alt="创建虚拟目录"></p>
<p>注：如果刚建立的jakarta筛选器的状态的图标不是<img src="http://www.finereport.com/CN/wordpress/wp-content/uploads/images/iis_1_6.png" alt="状态">,请注意上述配置过程有没有错误和遗漏。 </p>
<p>5.选择网站下面Web服务扩展，添加一个新的Web服务扩展，扩展名取为tomcat（扩展名可以任意取），要求的文件选择C:\jakarta\isapi_redirector2.dll。选择设置扩展状态，确定。如图。(windows2003系统中需要设置这一步) <img class="centered"  src="http://www.finereport.com/CN/wordpress/wp-content/uploads/images/iis_1_7.png" alt="添加新的web扩展"></p>
<p>6.重启Tomcat和IIS，打开浏览器，输入http://localhost/WebReport/ReportServer?reportlet=/demo/basic/post.cp t ，如果看到下图所示，说明配置成功。<img class="centered"  src="http://www.finereport.com/CN/wordpress/wp-content/uploads/images/iis_1_8.png" alt="配置成功"></p>
<p>注：服务器访问的默认路径为Tomcat服务器设置的默认路径，可对Tomcat服务器进行设置改变默认路径。另假如要将报表工程和已存在的工程进行整合，请将工程文件放置一起，并设置tomcat和iis服务器的默认路径。 </p>
]]></content:encoded>
			<wfw:commentRss>http://www.finereport.com/knowledge/install/iis_1.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Linux下配置FineReport报表</title>
		<link>http://www.finereport.com/knowledge/install/linux.html</link>
		<comments>http://www.finereport.com/knowledge/install/linux.html#comments</comments>
		<pubDate>Tue, 06 Jul 2010 07:08:52 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[安装部署]]></category>
		<category><![CDATA[报表安装部署]]></category>
		<category><![CDATA[报表教程]]></category>

		<guid isPermaLink="false">http://www.finereport.com/CN/wordpress/knowledge/install/linux%e4%b8%8b%e9%85%8d%e7%bd%aefinereport%e6%8a%a5%e8%a1%a8.html</guid>
		<description><![CDATA[前述
操作系统：linux
服务器：resin
报表应用：FineReport
操作步棸：
一：安装jdk
二：安装服务器，以resin为例
三：配置报表工程

一：安装jdk
1.首先在官网上下载jdk 例如jdkjdk1.6,  名称为 jdk-6u2-linux-i586-rpm.bin
2.通过ftp上传jdk-6u2-linux-i586-rpm.bin
3. 通过命命给所有的用户添加可执行的权限
    chmod a+x jdk-6u2-linux-i586-rpm.bin
     a：All，即全部的用户，包含拥有者，所属群组以及其他用户
    x：执行或切换权限，数字代号为&#8221;1&#8243;。
4. ./jdk-6u2-linux-i586-rpm.bin
     会生成文件jdk-6u2-linux-i586-rpm
     同样给所有的用户添加可执行权
    安装程序 rpm -ivh jdk-6u2-linux-i586-rpm
     接受协议，按enter即可
5. 最后设置path与classpath
    export JAVA_HOME=/usr/java/jdk1.6.0_02
6.执行命令  java -version
   [...]]]></description>
			<content:encoded><![CDATA[<p><b>前述</b></p>
<p>操作系统：linux<br />
服务器：resin<br />
报表应用：FineReport<br />
操作步棸：<br />
一：安装jdk<br />
二：安装服务器，以resin为例<br />
三：配置报表工程</p>
<p><span id="more-2001"></span></p>
<p><b>一：安装jdk</b></p>
<p>1.首先在官网上下载jdk 例如jdkjdk1.6,  名称为 jdk-6u2-linux-i586-rpm.bin<br />
2.通过ftp上传jdk-6u2-linux-i586-rpm.bin<br />
3. 通过命命给所有的用户添加可执行的权限<br />
    chmod a+x jdk-6u2-linux-i586-rpm.bin<br />
     a：All，即全部的用户，包含拥有者，所属群组以及其他用户<br />
    x：执行或切换权限，数字代号为&#8221;1&#8243;。<br />
4. ./jdk-6u2-linux-i586-rpm.bin<br />
     会生成文件jdk-6u2-linux-i586-rpm<br />
     同样给所有的用户添加可执行权<br />
    安装程序 rpm -ivh jdk-6u2-linux-i586-rpm<br />
     接受协议，按enter即可<br />
5. 最后设置path与classpath<br />
    export JAVA_HOME=/usr/java/jdk1.6.0_02<br />
6.执行命令  java -version<br />
   如果出现java version &#8220;1.6.0_02&#8243;表示安装成功</p>
<p><b>二．安装resin服务器</b></p>
<p>准备工作：在resin官网下载linux环境下的resin安装文件<br />
1） 安装 JDK 上一步已经执行<br />
2） 确定环境变量JAVA_HOME设置正确 上一步已经执行<br />
3） 安装<br />
单独运行：<br />
# tar zxvf resin-3.0.4.tar.gz<br />
# mv resin03.0.6 /usr/local/resin<br />
#cd /usr/local/resin<br />
# ./configure<br />
# make<br />
# make install<br />
#cd bin<br />
#./httpd.sh start</p>
<p><b>三.配置报表工程</b></p>
<p>安装好resin服务器后<br />
•把FineReport安装目录下的WebReport文件夹打包成zip 上传到ftp<br />
•在linux下通过访问ftp<br />
Cd到resin目录下的webapps文件夹<br />
ftp  ip地址<br />
转到zip包所在目录<br />
get WebReport.zip 到当前目录下<br />
exit 退出ftp<br />
在webapps文件夹下<br />
unzip WebReport.zip 把WebReport解压到webapps文件夹下<br />
•启动resin服务器<br />
Cd到resin的bin文件夹<br />
./httpd.sh<br />
  输入http://localhost:8080 测试服务器是否启动成功<br />
出现resin的欢迎界面说明启动成功<br />
  输入http://localhost:8080/WebReport/ReportServer?op=test 测试报表环境是否配置成功如出现报表界面则配置成功</p>
]]></content:encoded>
			<wfw:commentRss>http://www.finereport.com/knowledge/install/linux.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>FineReport6.5企业版Windows集群配置说明</title>
		<link>http://www.finereport.com/knowledge/install/deploy6_5.html</link>
		<comments>http://www.finereport.com/knowledge/install/deploy6_5.html#comments</comments>
		<pubDate>Tue, 06 Jul 2010 07:05:50 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[安装部署]]></category>
		<category><![CDATA[报表安装部署]]></category>
		<category><![CDATA[报表教程]]></category>

		<guid isPermaLink="false">http://www.finereport.com/CN/wordpress/knowledge/install/finereport6-5%e4%bc%81%e4%b8%9a%e7%89%88windows%e9%9b%86%e7%be%a4%e9%85%8d%e7%bd%ae%e8%af%b4%e6%98%8e.html</guid>
		<description><![CDATA[前述：
windows集群同J2EE的集群不同，因为它是操作系统自带的集群支持，它没有J2EE集群对java的web应用的良好支持，例如session复制以及session粘滞。所以对windows集群，需要特别配置一下，以此来支持集群的功能。
简单原理说明：
Windows集群的均衡负载会根据情况，将外部请求分配给集群内的服务器处理。当一个会话（Session）在A服务器上产生并开始，产生了一部分会话信息将保存到A服务器的内存中。假如这次会话中的一次请求被windows集群的均衡负载调度器分配到了B服务器去处理，那么问题就产生了，B服务器中的内存中并没有这个会话的信息，那么就会报session timeout。
而我们的配置，会在集群的服务器间建立联系。当B服务器收到请求，发现这个请求的会话不是自己产生的，那么它会根据请求中的信息，判断出这个会话是由哪台服务器产生。接着它会将这个请求通过内网转发给相应的那台服务器去处理。这样相当于就实现了J2EE集群的会话粘滞的功能。简单的说，会话粘滞就是保持一个会话中的多次交互都由一台集群中的服务器处理。这样就不会再产生上述的问题。
前提：
集群的服务器间需要有内网间通信的支持。不同服务器上的报表应用必须是一致的。
配置步骤：
集群内的每台安装有报表应用的服务器都需要这样配置。
1.	关闭现在的报表服务。
2.	增加配置文件。
将配置包resource文件夹下的cluster.xml打开。看见如下内容：

&#60;?xml version=&#34;1.0&#34; encoding=&#34;UTF-8&#34; ?&#62;
&#60;ClusterConfig useCluster=&#34;true&#34;&#62;      //useCluster=”true”表示启用集群配置
	&#60;ClusterService&#62;
		&#60;ServiceName&#62;A&#60;/ServiceName&#62;  //给这台服务器取一个区别于其他机器的别名
		&#60;ip&#62;192.168.0.1&#60;/ip&#62;            //这台服务器在内网中的IP地址
		&#60;port&#62;8080&#60;/port&#62;              //报表应用的端口
		&#60;WebAppName&#62;WebReport&#60;/WebAppName&#62;  //报表应用的名称
	&#60;/ClusterService&#62;
	&#60;ClusterService&#62;
		&#60;ServiceName&#62;B&#60;/ServiceName&#62;
		&#60;ip&#62;192.168.0.2&#60;/ip&#62;
		&#60;port&#62;8080&#60;/port&#62;
		&#60;WebAppName&#62;WebReport&#60;/WebAppName&#62;
	&#60;/ClusterService&#62;
&#60;/ClusterConfig&#62;

这里的每个ClusterService都是集群中一台服务器的相关信息。配置好后，系统会根据自身的IP和端口号去匹配找到相应的信息。当然也可能会有一些原因导致系统无法正确的匹配找到。这时您可以设置isSelf属性来指定自身的属性。例如这个配置文件部署在A服务器下，那么ServiceName为A的那个ClusterService节点后加一个属性 isSelf=”true”，表示下这是本机的信息。如下所示：

&#60;?xml version=&#34;1.0&#34; encoding=&#34;UTF-8&#34; ?&#62;
&#60;ClusterConfig useCluster=&#34;true&#34;&#62;
	&#60;ClusterService  isSelf=&#34;true&#34;&#62;
		&#60;ServiceName&#62;A&#60;/ServiceName&#62;
		&#60;ip&#62;192.168.0.1&#60;/ip&#62;
		&#60;port&#62;8080&#60;/port&#62;
		&#60;WebAppName&#62;WebReport&#60;/WebAppName&#62;
	&#60;/ClusterService&#62;
	&#60;ClusterService&#62;
		&#60;ServiceName&#62;B&#60;/ServiceName&#62;
		&#60;ip&#62;192.168.0.2&#60;/ip&#62;
		&#60;port&#62;8080&#60;/port&#62;
		&#60;WebAppName&#62;WebReport&#60;/WebAppName&#62;
	&#60;/ClusterService&#62;
&#60;/ClusterConfig&#62;       [...]]]></description>
			<content:encoded><![CDATA[<p><b>前述：</b></p>
<p>windows集群同J2EE的集群不同，因为它是操作系统自带的集群支持，它没有J2EE集群对java的web应用的良好支持，例如session复制以及session粘滞。所以对windows集群，需要特别配置一下，以此来支持集群的功能。</p>
<p><b>简单原理说明：</b></p>
<p>Windows集群的均衡负载会根据情况，将外部请求分配给集群内的服务器处理。当一个会话（Session）在A服务器上产生并开始，产生了一部分会话信息将保存到A服务器的内存中。<span id="more-2000"></span>假如这次会话中的一次请求被windows集群的均衡负载调度器分配到了B服务器去处理，那么问题就产生了，B服务器中的内存中并没有这个会话的信息，那么就会报session timeout。</p>
<p>而我们的配置，会在集群的服务器间建立联系。当B服务器收到请求，发现这个请求的会话不是自己产生的，那么它会根据请求中的信息，判断出这个会话是由哪台服务器产生。接着它会将这个请求通过内网转发给相应的那台服务器去处理。这样相当于就实现了J2EE集群的会话粘滞的功能。简单的说，会话粘滞就是保持一个会话中的多次交互都由一台集群中的服务器处理。这样就不会再产生上述的问题。</p>
<p><b>前提：</b></p>
<p>集群的服务器间需要有内网间通信的支持。不同服务器上的报表应用必须是一致的。</p>
<p><b>配置步骤：</b></p>
<p>集群内的每台安装有报表应用的服务器都需要这样配置。</p>
<p>1.	关闭现在的报表服务。</p>
<p>2.	增加配置文件。</p>
<p>将配置包resource文件夹下的cluster.xml打开。看见如下内容：</p>
<pre class="brush: plain;">
&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot; ?&gt;
&lt;ClusterConfig useCluster=&quot;true&quot;&gt;      //useCluster=”true”表示启用集群配置
	&lt;ClusterService&gt;
		&lt;ServiceName&gt;A&lt;/ServiceName&gt;  //给这台服务器取一个区别于其他机器的别名
		&lt;ip&gt;192.168.0.1&lt;/ip&gt;            //这台服务器在内网中的IP地址
		&lt;port&gt;8080&lt;/port&gt;              //报表应用的端口
		&lt;WebAppName&gt;WebReport&lt;/WebAppName&gt;  //报表应用的名称
	&lt;/ClusterService&gt;
	&lt;ClusterService&gt;
		&lt;ServiceName&gt;B&lt;/ServiceName&gt;
		&lt;ip&gt;192.168.0.2&lt;/ip&gt;
		&lt;port&gt;8080&lt;/port&gt;
		&lt;WebAppName&gt;WebReport&lt;/WebAppName&gt;
	&lt;/ClusterService&gt;
&lt;/ClusterConfig&gt;
</pre>
<p>这里的每个ClusterService都是集群中一台服务器的相关信息。配置好后，系统会根据自身的IP和端口号去匹配找到相应的信息。当然也可能会有一些原因导致系统无法正确的匹配找到。这时您可以设置isSelf属性来指定自身的属性。例如这个配置文件部署在A服务器下，那么ServiceName为A的那个ClusterService节点后加一个属性 isSelf=”true”，表示下这是本机的信息。如下所示：</p>
<pre class="brush: plain;">
&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot; ?&gt;
&lt;ClusterConfig useCluster=&quot;true&quot;&gt;
	&lt;ClusterService  isSelf=&quot;true&quot;&gt;
		&lt;ServiceName&gt;A&lt;/ServiceName&gt;
		&lt;ip&gt;192.168.0.1&lt;/ip&gt;
		&lt;port&gt;8080&lt;/port&gt;
		&lt;WebAppName&gt;WebReport&lt;/WebAppName&gt;
	&lt;/ClusterService&gt;
	&lt;ClusterService&gt;
		&lt;ServiceName&gt;B&lt;/ServiceName&gt;
		&lt;ip&gt;192.168.0.2&lt;/ip&gt;
		&lt;port&gt;8080&lt;/port&gt;
		&lt;WebAppName&gt;WebReport&lt;/WebAppName&gt;
	&lt;/ClusterService&gt;
&lt;/ClusterConfig&gt;         //这个就是指定自身信息的A服务器相应的配置文件了
</pre>
<p>ServiceName是为一台服务器取的别名，只是为了区别标记一下。最好简单方便，如A、B、C或者A1、A2等。注意！不能是中文。</p>
<p>IP、PORT、和WebAppName上面的注释中有介绍。</p>
<p>IP是该台服务器内网中的IP，就是其它服务器能与之通信的IP。Port是报表应用的端口号，假如是部署在tomcat下，那么就是tomcat的端口号，默认是8080.例如我们的内置服务器是8079。WebAppName是报表应用的名称，我们默认的是WebReport。</p>
<p>简单的讲。如上面的那个例子。B服务器的信息如下。</p>
<pre class="brush: plain;">
&lt;ClusterService&gt;
	&lt;ServiceName&gt;B&lt;/ServiceName&gt;
	&lt;ip&gt;192.168.0.2&lt;/ip&gt;
	&lt;port&gt;8080&lt;/port&gt;
	&lt;WebAppName&gt;WebReport&lt;/WebAppName&gt;
&lt;/ClusterService&gt;
</pre>
<p>那么正确的配置的结果，就是在A服务器上，假如有浏览器，浏览器中输入：</p>
<p>http://192.168.0.2:8080/WebReport/ReportServer?reportlet=xxx.cpt</p>
<p>就能访问到B服务器上的报表应用。这个url中的IP、端口号和web应用名称就是上面配置信息里面的。注：xxx.cpt只是举个例子。</p>
<p>那么综上说明，假如集群中多了一台C服务器，给它取个别名就叫C。内网IP是192.168.0.3。装了tomcat，端口默认是8080。报表应用名称也是默认是WebReport。那么服务器下的配置文件应该如下所示：</p>
<pre class="brush: plain;">
&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot; ?&gt;
&lt;ClusterConfig useCluster=&quot;true&quot;&gt;
	&lt;ClusterService&gt;
		&lt;ServiceName&gt;A&lt;/ServiceName&gt;
		&lt;ip&gt;192.168.0.1&lt;/ip&gt;
		&lt;port&gt;8080&lt;/port&gt;
		&lt;WebAppName&gt;WebReport&lt;/WebAppName&gt;
	&lt;/ClusterService&gt;
	&lt;ClusterService&gt;
		&lt;ServiceName&gt;B&lt;/ServiceName&gt;
		&lt;ip&gt;192.168.0.2&lt;/ip&gt;
		&lt;port&gt;8080&lt;/port&gt;
		&lt;WebAppName&gt;WebReport&lt;/WebAppName&gt;
	&lt;/ClusterService&gt;
	&lt;ClusterService&gt;
		&lt;ServiceName&gt;C&lt;/ServiceName&gt;
		&lt;ip&gt;192.168.0.3&lt;/ip&gt;
		&lt;port&gt;8080&lt;/port&gt;
		&lt;WebAppName&gt;WebReport&lt;/WebAppName&gt;
	&lt;/ClusterService&gt;
&lt;/ClusterConfig&gt;
</pre>
<p>最后，请根据上面的格式，写好cluster.xml文件，并且将其拷贝到各服务器的报表应用下WEB-INF\resources文件夹下。当然，有isSelf属性指定的特定服务器的配置文件需要保存到相应的服务器路径下。注意：xml文件的保存格式是 utf-8 no Bom的格式。一般用写字板打开配置包下的cluster.xml文件，修改保存就可以。</p>
<p><b>3.	测试配置是否生效。</b></p>
<p>当集群中的服务器都已经按照上述步骤配置好，并且重新启动报表应用后。依次在各台服务器上做如下测试。例如，现在在A服务器下，先本机测试下报表能否访问，测一张简单的模板就行。能正常访问(ie浏览器可能需要将localhost或者127.0.0.1的本机地址添加到信任站点中才能显示页面)，接着在浏览器上输入：</p>
<p>http://localhost:8080/WebReport/ReportServer?op=cluster_test</p>
<p>上述url地址前面部分按情况，请换上相应报表应用的端口号和应用名称。然后假如本机设置正常就能看到如下的信息（以上述A、B两台服务器的配置文件举例）：</p>
<p>Cluster is start!<br />
SELF:<br />
ServiceName:A<br />
IP:192.168.0.1<br />
PORT:8080<br />
WebAppName:WebReport</p>
<p>Other Server List:<br />
NO1: ServiceName:B = 192.168.0.2:8080/WebReport – OK</p>
<p>这样说明，配置生效，A服务器能与B服务器间进行通信。再次查看下信息是否有误。那么相应的在B服务器下测试，正确的回应如下。</p>
<p>Cluster is start!<br />
SELF:<br />
ServiceName:B<br />
IP:192.168.0.2<br />
PORT:8080<br />
WebAppName:WebReport</p>
<p>Other Server List:<br />
NO1: ServiceName:A = 192.168.0.1:8080/WebReport – OK</p>
<p>假如，没有显示Cluster is start，那么说明该机的配置没有生效，请检查配置文件后，重新启动应用，并且再次依照上面步骤测试。</p>
<p>假如显示是这样：</p>
<p>Cluster is start!<br />
Can not find Own Service Info.<br />
LocalIP:192.168.0.39<br />
LocalPort:8070。</p>
<p>说明，集群配置了，但是系统无法根据自身找到的IP和端口匹配到配置文件中的信息。而系统找到的IP是192.168. 0.39，端口是8070.可能您配置成了192.168.0.38：8080，那系统就找不到相应的节点信息了。当然由于各种原因可能系统无法拿到正确的IP和端口，这时请您检查后，设置正确的IP和端口后，在相应的ClusterService的节点上加isSelf属性(isSelf=”true”)。</p>
<p>假如，SELF:下的信息不正确，或者没有信息，也请检查配置文件；假如，下面列出的其它机器的信息不正确，或者有遗漏，也请检查配置信息后，重启报表应用重试；假如，其它服务器的回应，没有回应OK，例如回应Connection timed out: connect。请检查一下那台服务器的配置信息，检查网络连接，ping下那台机器的ip地址，看看是否能ping通，然后查看那台服务器报表应用的端口和应用名称是否设置正确。可以在浏览器中输地址直接在内网中访问下那台机上的报表应用，看看设置的ip、端口号等是否设置正确。修改后，重新启动报表应用，重试。</p>
<p>假如您觉得一台台服务器都这样去测试太麻烦，您也可以直接改成op=cluster_test_all 。(http://localhost:8080/WebReport/ReportServer?op=cluster_test_all)来一起测试。这个其实就是在本机上给其它机器发op=cluster_test的请求，然后把回应一起显示出来。例如这样：</p>
<p>Cluster is start<br />
SELF:<br />
ServiceName:A<br />
IP:192.168.100.39<br />
PORT:8080<br />
WebAppName:WebReport</p>
<p>Other Server List:<br />
NO1: ServiceName:B = 192.168.100.39:8070/WebReport<br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;<br />
Test it(op = cluster_test) &#8211; RE:<br />
Cluster is start! SELF:<br />
ServiceName:B<br />
IP :192.168.100.39<br />
PORT :8070<br />
WebAppName :WebReport</p>
<p>Other Server List:<br />
NO1: ServiceName:A = 192.168.100.39:8080/WebReport &#8211; OK</p>
<p>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;<br />
这个可能回应的时间比较长，所以假如长时间没有回应，说明某台机器的配置有问题，还是需要照上面的步骤一台台机器去测试。</p>
<p><b>4.	结束</b></p>
<p>当以上检查步骤结束。所有服务器都检查，发现正确后。恭喜，配置就完成了。</p>
<p>假如您在配置过程中，有无法解决的问题，请与我们联系。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.finereport.com/knowledge/install/deploy6_5.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>FineReport6.2企业版Windows集群配置说明</title>
		<link>http://www.finereport.com/knowledge/install/deploy6_2.html</link>
		<comments>http://www.finereport.com/knowledge/install/deploy6_2.html#comments</comments>
		<pubDate>Tue, 06 Jul 2010 07:02:56 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[安装部署]]></category>
		<category><![CDATA[报表安装部署]]></category>
		<category><![CDATA[报表教程]]></category>

		<guid isPermaLink="false">http://www.finereport.com/CN/wordpress/knowledge/install/finereport6-2%e4%bc%81%e4%b8%9a%e7%89%88windows%e9%9b%86%e7%be%a4%e9%85%8d%e7%bd%ae%e8%af%b4%e6%98%8e.html</guid>
		<description><![CDATA[前述：
windows集群同J2EE的集群不同，因为它是操作系统自带的集群支持，它没有J2EE集群对java的web应用的良好支持，例如session复制以及session粘滞。所以对windows集群，需要特别配置一下，以此来支持集群的功能。
简单原理说明：
Windows集群的均衡负载会根据情况，将外部请求分配给集群内的服务器处理。当一个会话（Session）在A服务器上产生并开始，产生了一部分会话信息将保存到A服务器的内存中。假如这次会话中的一次请求被windows集群的均衡负载调度器分配到了B服务器去处理，那么问题就产生了，B服务器中的内存中并没有这个会话的信息，那么就会报session timeout。
而我们的配置，会在集群的服务器间建立联系。当B服务器收到请求，发现这个请求的会话不是自己产生的，那么它会根据请求中的信息，判断出这个会话是由哪台服务器产生。接着它会将这个请求通过内网转发给相应的那台服务器去处理。这样相当于就实现了J2EE集群的会话粘滞的功能。简单的说，会话粘滞就是保持一个会话中的多次交互都由一台集群中的服务器处理。这样就不会再产生上述的问题。
前提：
集群的服务器间需要有内网间通信的支持。
配置步骤：
集群内的每台安装有报表应用的服务器都需要这样配置。
1.关闭现在的报表服务。
2.更换jar文件。（文件在配置包的resource文件夹中）
A.找到/WebReport?（这个是您的WEB应用的名称）/WEB-INF/lib文件夹（lib文件夹是和存放报表模板文件的repolets文件夹平级的）。拷贝commons-codec-1.2.jar，commons-httpclient-3.1.jar到lib文件夹下。拷贝fr-server-6.2.jar到lib文件夹下覆盖原来的相同名称的jar文件。
B.假如您已经部署了报表应用到tomcat等web服务器下，那么不需要执行这一步。
假如您是直接装了我们的报表设计器，并且是启动我们的内置服务器在做简单测试。那么请将fr-designer-6.2.jar覆盖设计器安装目录下lib文件夹下的相同名称jar文件。
3.增加配置文件。
将配置包resource文件夹下的cluster.xml打开。看见如下内容

&#60;?xml version=&#34;1.0&#34; encoding=&#34;UTF-8&#34; ?&#62;
&#60;ClusterConfig useCluster=&#34;true&#34;&#62;      //useCluster=”true”表示启用集群配置
	&#60;ClusterService isSelf=&#34;true&#34;&#62;
          //这个节点包含一台服务器的相关信息,isSelf=”true”说明这是本机信息
		&#60;ServiceName&#62;A&#60;/ServiceName&#62;  //给这台服务器取一个区别于其他机器的别名
		&#60;ip&#62;192.168.0.1&#60;/ip&#62;            //这台服务器在内网中的IP地址
		&#60;port&#62;8080&#60;/port&#62;              //报表应用的端口
		&#60;WebAppName&#62;WebReport&#60;/WebAppName&#62;  //报表应用的名称
	&#60;/ClusterService&#62;
	&#60;ClusterService&#62;
   [...]]]></description>
			<content:encoded><![CDATA[<p><b>前述：</b></p>
<p>windows集群同J2EE的集群不同，因为它是操作系统自带的集群支持，它没有J2EE集群对java的web应用的良好支持，例如session复制以及session粘滞。所以对windows集群，需要特别配置一下，以此来支持集群的功能。</p>
<p><b>简单原理说明：</b></p>
<p>Windows集群的均衡负载会根据情况，将外部请求分配给集群内的服务器处理。当一个会话（Session）在A服务器上产生并开始，产生了一部分会话信息将保存到A服务器的内存中。<span id="more-1999"></span>假如这次会话中的一次请求被windows集群的均衡负载调度器分配到了B服务器去处理，那么问题就产生了，B服务器中的内存中并没有这个会话的信息，那么就会报session timeout。</p>
<p>而我们的配置，会在集群的服务器间建立联系。当B服务器收到请求，发现这个请求的会话不是自己产生的，那么它会根据请求中的信息，判断出这个会话是由哪台服务器产生。接着它会将这个请求通过内网转发给相应的那台服务器去处理。这样相当于就实现了J2EE集群的会话粘滞的功能。简单的说，会话粘滞就是保持一个会话中的多次交互都由一台集群中的服务器处理。这样就不会再产生上述的问题。</p>
<p><b>前提：</b></p>
<p>集群的服务器间需要有内网间通信的支持。</p>
<p><b>配置步骤：</b></p>
<p>集群内的每台安装有报表应用的服务器都需要这样配置。</p>
<p>1.关闭现在的报表服务。</p>
<p>2.更换jar文件。（文件在配置包的resource文件夹中）</p>
<p>A.找到/WebReport?（这个是您的WEB应用的名称）/WEB-INF/lib文件夹（lib文件夹是和存放报表模板文件的repolets文件夹平级的）。拷贝commons-codec-1.2.jar，commons-httpclient-3.1.jar到lib文件夹下。拷贝fr-server-6.2.jar到lib文件夹下覆盖原来的相同名称的jar文件。</p>
<p>B.假如您已经部署了报表应用到tomcat等web服务器下，那么不需要执行这一步。<br />
假如您是直接装了我们的报表设计器，并且是启动我们的内置服务器在做简单测试。那么请将fr-designer-6.2.jar覆盖设计器安装目录下lib文件夹下的相同名称jar文件。</p>
<p>3.增加配置文件。<br />
将配置包resource文件夹下的cluster.xml打开。看见如下内容</p>
<pre class="brush: plain;">
&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot; ?&gt;
&lt;ClusterConfig useCluster=&quot;true&quot;&gt;      //useCluster=”true”表示启用集群配置
	&lt;ClusterService isSelf=&quot;true&quot;&gt;
          //这个节点包含一台服务器的相关信息,isSelf=”true”说明这是本机信息
		&lt;ServiceName&gt;A&lt;/ServiceName&gt;  //给这台服务器取一个区别于其他机器的别名
		&lt;ip&gt;192.168.0.1&lt;/ip&gt;            //这台服务器在内网中的IP地址
		&lt;port&gt;8080&lt;/port&gt;              //报表应用的端口
		&lt;WebAppName&gt;WebReport&lt;/WebAppName&gt;  //报表应用的名称
	&lt;/ClusterService&gt;
	&lt;ClusterService&gt;
         //这里没有isSelf=”true”默认就为false，表示这是其它机器的信息
		&lt;ServiceName&gt;B&lt;/ServiceName&gt;
		&lt;ip&gt;192.168.0.2&lt;/ip&gt;
		&lt;port&gt;8080&lt;/port&gt;
		&lt;WebAppName&gt;WebReport&lt;/WebAppName&gt;
	&lt;/ClusterService&gt;
&lt;/ClusterConfig&gt;
</pre>
<p>这里的每个ClusterService都是集群中一台服务器的相关信息。假如这个配置文件部署在A服务器下，那么ServiceName为A的那个ClusterService节点后加一个属性 isSelf=”true”，表示下这是本机的信息。相应的，假如是部署在B服务器下的文件，就需要在ServiceName为B的ClusterService节点后加isSelf=”true”，如下所示。</p>
<pre class="brush: plain;">
&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot; ?&gt;
&lt;ClusterConfig useCluster=&quot;true&quot;&gt;
	&lt;ClusterService&gt;
		&lt;ServiceName&gt;A&lt;/ServiceName&gt;
		&lt;ip&gt;192.168.0.1&lt;/ip&gt;
		&lt;port&gt;8080&lt;/port&gt;
		&lt;WebAppName&gt;WebReport&lt;/WebAppName&gt;
	&lt;/ClusterService&gt;
	&lt;ClusterService  isSelf=&quot;true&quot;&gt;
		&lt;ServiceName&gt;B&lt;/ServiceName&gt;
		&lt;ip&gt;192.168.0.2&lt;/ip&gt;
		&lt;port&gt;8080&lt;/port&gt;
		&lt;WebAppName&gt;WebReport&lt;/WebAppName&gt;
	&lt;/ClusterService&gt;
&lt;/ClusterConfig&gt;         //这个就是B服务器相应的配置文件了
</pre>
<p>ServiceName是为一台服务器取的别名，只是为了区别标记一下。最好简单方便，如A、B、C或者A1、A2等。注意不能是中文。</p>
<p>IP、PORT、和WebAppName上面的注释中有介绍。</p>
<p>IP是该台服务器内网中的IP，就是其它服务器能与之通信的IP。Port是报表应用的端口号，假如是部署在tomcat下，那么就是tomcat的端口号，默认是8080.例如我们的内置服务器是8079。WebAppName是报表应用的名称，我们默认的是WebReport。</p>
<p>简单的讲。如上面的那个例子。B服务器的信息如下。</p>
<pre class="brush: plain;">
             &lt;ClusterService&gt;
		&lt;ServiceName&gt;B&lt;/ServiceName&gt;
		&lt;ip&gt;192.168.0.2&lt;/ip&gt;
		&lt;port&gt;8080&lt;/port&gt;
		&lt;WebAppName&gt;WebReport&lt;/WebAppName&gt;
	&lt;/ClusterService&gt;
</pre>
<p>那么正确的配置的结果，就是在A服务器上，假如有浏览器，浏览器中输入：</p>
<p>http://192.168.0.2:8080/WebReport/ReportServer?reportlet=xxx.cpt</p>
<p>就能访问到B服务器上的报表应用。这个url中的IP、端口号和web应用名称就是上面配置信息里面的。注：xxx.cpt只是举个例子。</p>
<p>那么综上说明，假如集群中多了一台C服务器，给它取个别名就叫C。内网IP是192.168.0.3。装了tomcat，端口默认是8080。报表应用名称也是默认是WebReport。那么C服务器下的配置文件应该如下所示：</p>
<pre class="brush: plain;">
&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot; ?&gt;
&lt;ClusterConfig useCluster=&quot;true&quot;&gt;
	&lt;ClusterService&gt;
		&lt;ServiceName&gt;A&lt;/ServiceName&gt;
		&lt;ip&gt;192.168.0.1&lt;/ip&gt;
		&lt;port&gt;8080&lt;/port&gt;
		&lt;WebAppName&gt;WebReport&lt;/WebAppName&gt;
	&lt;/ClusterService&gt;
	&lt;ClusterService&gt;
		&lt;ServiceName&gt;B&lt;/ServiceName&gt;
		&lt;ip&gt;192.168.0.2&lt;/ip&gt;
		&lt;port&gt;8080&lt;/port&gt;
		&lt;WebAppName&gt;WebReport&lt;/WebAppName&gt;
	&lt;/ClusterService&gt;
	&lt;ClusterService  isSelf=&quot;true&quot;&gt;
		&lt;ServiceName&gt;C&lt;/ServiceName&gt;
		&lt;ip&gt;192.168.0.3&lt;/ip&gt;
		&lt;port&gt;8080&lt;/port&gt;
		&lt;WebAppName&gt;WebReport&lt;/WebAppName&gt;
	&lt;/ClusterService&gt;
&lt;/ClusterConfig&gt;
</pre>
<p>最后，请根据上面的格式，为每一台服务器修改相应的cluster.xml文件，并且将其拷贝到报表应用下WEB-INF\resources文件夹下。注意:xml文件的保存格式是 utf-8 no Bom的格式。一般用写字板打开配置包下的cluster.xml文件，修改保存就可以。</p>
<p><b>4.	测试配置是否生效。</b></p>
<p>当集群中的服务器都已经按照上述步骤配置好，并且重新启动报表应用后。依次在各台服务器上做如下测试。例如，现在在A服务器下，先本机测试下报表能否访问，测一张简单的模板就行。能正常访问(ie浏览器可能需要将localhost或者127.0.0.1的本机地址添加到信任站点中才能显示页面)，接着在浏览器上输入:</p>
<p>http://localhost:8080/WebReport/ReportServer?op=cluster_test</p>
<p>上述url地址前面部分按情况，请换上相应报表应用的端口号和应用名称。然后假如设置正常就能看到如下的信息：（以上述A、B两台服务器的配置文件举例）</p>
<p>Cluster is start<br />
SELF:<br />
    ServiceName:A<br />
    IP         :192.168.0.1<br />
    PORT       :8080<br />
    WebAppName :WebReport</p>
<p>NO1:<br />
    ServiceName:B<br />
    IP         :192.168.0.2<br />
    PORT       :8080<br />
    WebAppName :WebReport<br />
****************************************<br />
RE:<br />
Cluster is start<br />
INFO:<br />
    ServiceName:B<br />
    IP         :192.168.0.2<br />
    PORT       :8080<br />
    WebAppName :WebReport</p>
<p>**************************************** </p>
<p>IE中可能没有换行，请见谅。</p>
<p>这样说明，配置生效，A服务器能与B服务器间进行通信。*****中间的是B服务器的回应，说明其也已启动。再次查看下信息是否有误。那么相应的在B服务器下，正确的回应如下：</p>
<p>Cluster is start<br />
SELF:<br />
    ServiceName:B<br />
    IP         :192.168.0.2<br />
    PORT       :8080<br />
    WebAppName :WebReport</p>
<p>NO1:<br />
    ServiceName:A<br />
    IP         :192.168.0.1<br />
    PORT       :8080<br />
    WebAppName :WebReport<br />
****************************************<br />
RE:<br />
Cluster is start<br />
INFO:<br />
    ServiceName:A<br />
    IP         :192.168.0.1<br />
    PORT       :8080<br />
    WebAppName :WebReport</p>
<p>****************************************</p>
<p>假如没有显示Cluster is start，那么说明该机的配置没有生效，请检查配置文件后，重新启动应用，并且再次依照上面步骤测试;假如SELF:下的信息不正确，或者没有信息，也请检查配置文件，看看isSelf属性是否写对;假如下面列出的其它机器的信息不正确，或者有遗漏，也请检查配置信息后，重启报表应用重试;假如其它服务器的回应，就是******中的信息，有问题。请检查下那台服务器的配置信息，检查网络连接，ping下那台机器的ip地址，看看是否能ping通。然后查看那台服务器报表应用的端口和应用名称是否设置正确。</p>
<p>可以在浏览器中输地址直接在内网中访问下那台机上的报表应用，看看设置的ip、端口号等是否设置正确。修改后，重新启动报表应用，重试。</p>
<p><b>5.	结束</b></p>
<p>当以上检查步骤结束。所有服务器都检查，发现正确后。恭喜，配置就完成了。</p>
<p>假如您在配置过程中，有无法解决的问题，请与我们联系。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.finereport.com/knowledge/install/deploy6_2.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Sql server 2000 连接测试</title>
		<link>http://www.finereport.com/knowledge/install/sql.html</link>
		<comments>http://www.finereport.com/knowledge/install/sql.html#comments</comments>
		<pubDate>Tue, 06 Jul 2010 06:59:41 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[安装部署]]></category>
		<category><![CDATA[报表安装部署]]></category>
		<category><![CDATA[报表教程]]></category>

		<guid isPermaLink="false">http://www.finereport.com/CN/wordpress/knowledge/install/sql-server-2000-%e8%bf%9e%e6%8e%a5%e6%b5%8b%e8%af%95.html</guid>
		<description><![CDATA[
Sql server 2000 数据库本身规定了其数据库连接URL 的一般格式，如下：
       jdbc:sqlserver://[serverName[\instanceName][:portNumber]][;property=value[;property=value]]
       之间无空格，其中：


jdbc:sqlserver://（必需）称为子协议，且为常数。
serverName（可选）是要连接到的服务器的地址。它可以是 DNS 或 IP 地址，也可以是本地计算机地址 localhost 或 127.0.0.1。如果未在连接 URL 中指定服务器名称，则必须在属性集中指定。
instanceName （可选）是 serverName 上要连接到的实例。如果未指定，则会连接到默认实例（master）。
portNumber（可选）是 serverName 上要连接到的端口。默认值为 1433。如果使用默认端口，则无需在 URL 中指定端口及其前面的“:”。
property（可选）是一个或多个选项连接属性。有关详细信息，请参阅设置连接属性。可指定该列表中的任何属性。属性只能用分号（“;”）分隔，且不允许重复。
       
连接实例写法有：

使用用户名和密码连接到本地计算机上的默认数据库：
             [...]]]></description>
			<content:encoded><![CDATA[<ol>
<li>Sql server 2000 数据库本身规定了其数据库连接URL 的一般格式，如下：<br />
       jdbc:sqlserver://[serverName[\instanceName][:portNumber]][;property=value[;property=value]]<br />
       之间无空格，其中：</p>
<p><span id="more-1998"></span></p>
<ul type=disc>
<li>jdbc:sqlserver://（必需）称为子协议，且为常数。
<li>serverName（可选）是要连接到的服务器的地址。它可以是 DNS 或 IP 地址，也可以是本地计算机地址 localhost 或 127.0.0.1。如果未在连接 URL 中指定服务器名称，则必须在属性集中指定。
<li>instanceName （可选）是 serverName 上要连接到的实例。如果未指定，则会连接到默认实例（master）。
<li>portNumber（可选）是 serverName 上要连接到的端口。默认值为 1433。如果使用默认端口，则无需在 URL 中指定端口及其前面的“:”。
<li>property（可选）是一个或多个选项连接属性。有关详细信息，请参阅设置连接属性。可指定该列表中的任何属性。属性只能用分号（“;”）分隔，且不允许重复。
       </ul>
<li>连接实例写法有：
<ul type=disc>
<li>使用用户名和密码连接到本地计算机上的默认数据库：<br />
              jdbc:sqlserver://localhost;user=MyUserName;password=*****; </p>
<li>使用集成身份验证连接到本地计算机上的默认数据库：<br />
              jdbc:sqlserver://localhost;integratedSecurity=true;</p>
<li>连接到远程服务器上的指定数据库：<br />
              jdbc:sqlserver://localhost;databaseName=AdventureWorks;integratedSecurity=true; </p>
<li>连接到远程服务器上的默认端口：<br />
              jdbc:sqlserver://localhost:1433;databaseName=AdventureWorks;integratedSecurity=true; </p>
<li>通过指定自定义应用程序名称进行连接：<br />
              jdbc:sqlserver://localhost;databaseName=AdventureWorks;<br />
integratedSecurity=true;applicationName=MyApp;
       </ul>
<li>以我们设计器中的URL写法为例详细说明：<br />
       jdbc:microsoft:sqlserver://192.168.100.112:1433;databaseName=test<br />
       其中</p>
<ul type=disc>
<li>databaseName=test 为连接属性，属性值只用“;”分割，我们只用了一个，如有多个属性便可写成:<br />
              ;databaseName=test;user=MyUserName;password=*****;<br />
              因此在test后加不加“;” 连接效果一样，即URL写成<br />
              jdbc:microsoft:sqlserver://192.168.100.112:1433;databaseName=test<br />
              或jdbc:microsoft:sqlserver://192.168.100.112:1433;databaseName=test；<br />
              都能正确读取test数据库</p>
<li>Sql server 2000 数据库默认的端口为1433，默认的数据库实master（应该是安装时自带的数据库）<br />
               当URL中databaseName 前误加了一“_”空格后，如下：<br />
               jdbc:microsoft:sqlserver://192.168.100.112:1433; databaseName=test<br />
               此时获取URL时自动判断空格时URL结束，即获得的实际URL为：<br />
               jdbc:microsoft:sqlserver://192.168.100.112:1433;<br />
               而此URL连接的为sql server 2000 默认的数据库 master,所以读取的就是数据库master中的表
        </ul>
</ol>
<p><b>结论：</b></p>
<p>在写sql server 2000的数据库URL时，除其本身已有的特殊字符外，要添加其他特殊字符必须进行转义，将这些字符包含在大括号中， JDBC 驱动程序将支持对其进行转义。例如，{;} 将转义分号。</p>
<p>转义的值可以包含特殊字符（特别是“=”、“;”、“[]”和空格），但不能包含大括号。应将必须进行转义且包含大括号的值添加到属性集中。</p>
<p><b>方案：</b></p>
<p>将我们所用的数据库改变为默认数据库是一种方法，但一般存在多个可用的数据库，所以除sqlserver本身规定的URL格式外，在我们的程序中最好进行限制，只使用jdbc:microsoft:sqlserver://ip:port;databaseName=Databasename一种写法，且中间不能有空格等</p>
]]></content:encoded>
			<wfw:commentRss>http://www.finereport.com/knowledge/install/sql.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>oracle 10g数据库备份与还原总结</title>
		<link>http://www.finereport.com/knowledge/install/10g.html</link>
		<comments>http://www.finereport.com/knowledge/install/10g.html#comments</comments>
		<pubDate>Tue, 06 Jul 2010 06:57:37 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[安装部署]]></category>
		<category><![CDATA[报表安装部署]]></category>
		<category><![CDATA[报表教程]]></category>
		<category><![CDATA[数据库]]></category>

		<guid isPermaLink="false">http://www.finereport.com/CN/wordpress/knowledge/install/oracle-10g%e6%95%b0%e6%8d%ae%e5%ba%93%e5%a4%87%e4%bb%bd%e4%b8%8e%e8%bf%98%e5%8e%9f%e6%80%bb%e7%bb%93.html</guid>
		<description><![CDATA[
一.总述


数据库归档模式

非归档模式:当数据库数据只读不会改变时,数据不会改变,数据库适合用非归档模式,这样提高性能
归档模式:对于数据库数据经常变动,数据库最好用归档模式,这样可以尽量避免数据库数据丢失,使出现问题时灾害降到最低
      
非归档模式与归档模式间的切换(在命令窗口下):

检查当前日志操作模式：
             f:\>sqlplus sys/dba as sysdba
              连接数据库
              sql>select log_mode from v$database;

关闭数据库,后装载数据库,只能在mount状态下改变日志操作模式
  [...]]]></description>
			<content:encoded><![CDATA[<p>
<h3>一.总述</h3>
</p>
<ol>
<li><b>数据库归档模式</b>
<ul type=disc>
<li>非归档模式:当数据库数据只读不会改变时,数据不会改变,数据库适合用非归档模式,这样提高性能
<li>归档模式:对于数据库数据经常变动,数据库最好用归档模式,这样可以尽量避免数据库数据丢失,使出现问题时灾害降到最低
      </ul>
<li><b>非归档模式与归档模式间的切换(在命令窗口下):</b>
<ul type=disc>
<li>检查当前日志操作模式：<br />
             f:\>sqlplus sys/dba as sysdba<br />
              连接数据库<br />
              sql>select log_mode from v$database;</p>
<p><span id="more-1997"></span></p>
<li>关闭数据库,后装载数据库,只能在mount状态下改变日志操作模式<br />
             sql>startup mount</p>
<li>改变日志模式<br />
              sql>alter database achivelog;(变为归档方式,否则为nochivelog)<br />
              sql>alter database open;
         </ul>
<li><b>查看归档模式相关信息:</b>
<ul type=disc>
<li>若采用默认设置,归档日志位置在快速恢复区
<li>配置归档日志位置 log_archive_dest_n  (n=[1:10])<br />
              sql>alter system set<br />
                  log_archive_dest_1 = &#8216;location =c:\demo\archive [optional]&#8216;;<br />
              sql>alter system set<br />
                  log_archive_dest_2 = &#8217;service =standby [mandatory] [reopen]&#8216;;<br />
         其中:location 是本地；<br />
              service  是远程；<br />
              optional 无论归档是否成功,都会覆盖重做日志；<br />
              mandatory只有成功归档才会覆盖重做日志；<br />
              reopen 重新归档时间间隔 默认是300s。</p>
<li>显示归档信息,即显示显示日志操作模式<br />
              sql>select name,log_mode from v$database;</p>
<li>显示归档日志信息<br />
              sql>select name,sequence#,first_change# from v$archive_log;<br />
              sequence#: 归档序列号<br />
              first_change# : 起始SCN值</p>
<li>显示归档日志位置<br />
              sql>select dest_name,destination,status from v$archive_dest;<br />
              dest_name 归档位置参数名 <br />
              destination 位置</p>
<li>显示日志历史信息<br />
              sql>select * from v$loghist;<br />
              threade# : 重做线程号<br />
              sequence# : 日志序列号<br />
              first_change# : 起始SCN值<br />
              first_time : 起始SCN发生时间<br />
              switch_change : 切换SCN值
       </ul>
</ol>
<p>
<h3>二.非归档模式下的备份与还原</h3>
</p>
<ul>
<li>日志采用覆盖原有日志的方式存储
<li>出现介质失败时,只能恢复到过去的完全备份点
<li>数据库OPEN状态是,不能备份数据库
<li>必须先关闭数据库,再备份,且必须备份所有数据,控制文件
</ul>
<ol>
<li><b>备份==冷备份</b>
<ul type=disc>
<li>先关闭数据库 <br />
             sql>shutdown immediate</p>
<li>拷贝所有数据文件,和控制文件
      </ul>
<li><b>恢复</b>
<ul type=disc>
<li>数据文件出现丢失,但备份以来的重做日志内容尚未被覆盖,此时可以完全恢复
<ul type=circle>
<li>装载数据库<br />
               sql>startup force mount</p>
<li>复制数据文件备份
<li>恢复数据文件<br />
               sql>recover datafile 1</p>
<li>打开数据库<br />
               sql>alter database open;
           </ul>
<li>备份文件的重做日志内容已经被覆盖,则只能还原到备份点
<ul type=circle>
<li>关闭数据库
<li>复制所有数据和控制备份文件至原位置
<li>装载数据库,执行恢复命令<br />
               sql>startup mount<br />
               sql>recover database until cancel<br />
               提示控制文件不再使用原有重做日志</p>
<li>用resetlogs选项打开数据库<br />
                sql>alter database open resetlogs;
            </ul>
</ul>
</ol>
<p>
<h3>三.归档模式</h3>
</p>
<ul type=disc>
<li>可以防止数据丢失
<li>数据处于OPEN状态时可以进行备份
<li>当出现介质失败时,除了SYSTEM表空间中的数据文件外其他的都可以在open状态下恢复
<li>可执行完全恢复,也可以恢复到备份点与失败点之间的某时刻
</ul>
<ol type=1>
<li><b>备份</b>
<ol type=a>
<li>冷备份<br />
                 shutdown后拷贝所需数据文件和控制文件</p>
<li>热备份
<ul type=circle>
<li>将数据库设置为归档模式
<li>在数据库上发出全局检查点,在所有的数据文件头块上加锁<br />
                       sql>alter database begin backup ;</p>
<li>备份数据文件及控制文件<br />
                       数据文件直接拷贝至其他目录<br />
                       控制文件需使用alter database backup controlfile<br />
                       sql>alter database backup controlfile to &#8216;d:\backup\demo.ctl&#8217;;</p>
<li>结束数据备份,为确保数据文件备份的同步性,还应该归档当前日志组<br />
                       sql>alter database end backup;<br />
                       sql>alter system archive log cuurent;
                </ul>
<li>备份表空间
<ul type=disc>
<li>脱机备份(表空间处于OFFLINE状态,SYSTEM表空间和正在使用的UNDO空间不能脱机)
<ul type=circle>
<li>确定表空间包涵的数据文件,如空间USERS<br />
                             sql>select file_name from dba_data_files<br />
                             where tablespace_name = &#8216;users&#8217;;</p>
<li>设置表空间为脱机状态<br />
                             sql>alter tablespace users offline;</p>
<li>复制数据文件
<li>设置表空间联机<br />
                             sql>alter tablespace users online;
                       </ul>
<li>联机备份
<ul type=circle>
<li>确定对应关系
<li>设置表空间为备份模式<br />
                              sql>alter tablespace users begin backup ;</p>
<li>复制数据文件
<li>设置表空间为正常模式<br />
                              sql>alter tablespace users end backup ;
                        </ul>
<li>处理联机备份失败<br />
                        当执行联机备份时,若出现例程失败,再次打开数据库时,如果数据文件仍处于备份状态,则会出错,此时需要结束备份</p>
<ul type=circle>
<li>装载数据库<br />
                              sql>startup force mount</p>
<li>查看处于联机备份状态的所有数据文件<br />
                              sql>select file# from v$backup where status = &#8216;active&#8217;;</p>
<li>结束联机备份状态<br />
                              sql>alter tablespace end backup<br />
                              或alter tablespace datafile backup;<br />
                              或recover datafile 序号</p>
<li>打开数据库<br />
                               sql>alter database open;
                        </ul>
</ul>
</ol>
<li><b>还原</b>
<ol type=a>
<li>完全恢复<br />
             相关命令:<br />
             recover database :恢复数据库的多个数据文件(在MOUNT状态下运行)<br />
             recover tadaspace :恢复多个表空间的所有数据文件(在open状态下运行)<br />
             recover datafile :恢复一个或多个数据文件(在mount,open状态下都可)</p>
<ul type=disc>
<li>在mount状态下恢复数据文件(用于SYSTEM表空间恢复)
<ul type=circle>
<li>装载数据库 mount状态
<li>确定需要恢复的数据文件<br />
                           sql>select file#,error from v$recover_file</p>
<li>拷贝备份至原位置
<li>恢复数据库 recover..上述命令
<li>打开数据库 alter database open;
                     </ul>
<li>在open状态下恢复关闭后意外对视的数据文件,此时数据库将无法打开
<ul type=circle>
<li>装载数据库 mount
<li>确定需要恢复的数据文件
<li>使相应的数据文件脱机<br />
                           sql>alter database datafile 4 offline;</p>
<li>打开数据库<br />
                           sql>alter database open</p>
<li>复制数据备份文件
<li>恢复数据文件
<li>是数据文件联机 alter database datafile 4 online;
                      </ul>
<li>在open状态下恢复打开时意外丢失的数据文件
<ul type=circle>
<li>确定要恢复的数据文件
<li>使数据文件脱机
<li>复制数据文件
<li>恢复相应的表空间或数据文件
<li>使相应的表空间或数据文件联机
                      </ul>
<li>在open状态下恢复未备份的数据文件(要求在归档模式下,新建数据文件,其从简历开始的所有归档日志必须全部存在)
<ul type=circle>
<li>装载数据库
<li>确定要恢复的数据文件
<li>是数据文件脱机
<li>打开数据库
<li>重新建立数据文件<br />
                            sql>alter database create datafile &#8216;d:\demo\users01.dbf&#8217;;</p>
<li>恢复数据文件
<li>使数据文件联机
                      </ul>
</ul>
<li>不完全恢复<br />
                使用已备份的数据文件,归档日志,和重做日志,将数据库恢复到备份点与失败点之间某个时刻的状态</p>
<ul type=disc>
<li>恢复分类<br />
                       基于时间的恢复:误删除表,误截断表,提交了错误的数据；<br />
                       基于取笑恢复:恢复到某个日志序列号之前的状态；<br />
                       基于SCN的恢复:恢复到特定SCN值的状态；<br />
                       基于备份控制文件恢复:表空间被意外删除，或所有控制文件全部损坏。</p>
<li>不完全恢复指令<br />
                       recover database until time<br />
                       recover database until change<br />
                       recover database until cancel<br />
                       recover database .. using backup controlfile</p>
<li>基于时间的恢复
<ul type=circle>
<li>关闭数据库(为防止备份失败,应备份当前数据库所有文件
<li>装载数据库 startup mount
<li>复制所有备份数据文件,并确定备份文件的时间点<br />
                            sql>select file#,to_char(time,&#8217;yyyy-mm-dd hh24:mi:ss)<br />
                            from v$recover_file;</p>
<li>执行recover database until time<br />
                            sql>recover database until time &#8220;2006-09-26 16:40:33&#8242;</p>
<li>以resetlogs方式打开数据库,并检查恢复结果<br />
                            sql>alter database open resetlogs;</p>
<li>备份数据库所有数据文件和控制文件,因为当以resetlogs方式打开数据库后会重新建立重做日志,清空原有重做日志的所有内容,并将日志序列号复位为1。<br />
                            sql>select name from v$datafile;<br />
                            sql>alter database begin backup;<br />
                            拷贝数据文件<br />
                            sql>alter database end backup;<br />
                            sql>alter database backup controlfile<br />
                            to &#8216;d:\backup\demo.ctl&#8217; reuse;<br />
                            sql>alter system archive log cuurent;
                      </ul>
<li>基于SCN恢复
<ul type=circle>
<li>关闭数据库
<li>装载数据库 mount
<li>复制所有备份数据文件,确定备份文件SCN值<br />
                            sql>select file#,change#, from v$recover_file;</p>
<li>执行recover database until change<br />
                            sql>recover database until change 675978;</p>
<li>以resetlogs方式打开数据库
<li>备份数据库所有数据文件和控制文件
                       </ul>
<li>基于取消恢复
<ul type=circle>
<li>关闭数据库
<li>装载数据库
<li>复制所有备份的数据文件,确定备份文件的SCN值<br />
                            sql>select file#,change# from v$recover_file;</p>
<li>执行recover database until cancle<br />
                            sql>recover database until cancel</p>
<li>以resetlogs方式打开数据库
<li>备份所有数据文件和控制文件
                      </ul>
<li>基于备份控制文件的恢复
<ul type=circle>
<li>通过查看alert文件,确定误操作时间
<li>关闭数据库
<li>复制所有备份的数据文件,控制文件
<li>装载数据库
<li>执行recover database ..using backup controlfile<br />
                             sql>recover database until time &#8216;2004-09-26 19:51:06&#8242;<br />
                             using backup controlfile</p>
<li>以resetlogs 方式打开数据库
<li>备份所有数据文件和控制文件
                       </ul>
</ul>
</ol>
</ol>
]]></content:encoded>
			<wfw:commentRss>http://www.finereport.com/knowledge/install/10g.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Oracle数据库实现自增长列</title>
		<link>http://www.finereport.com/knowledge/install/oracle.html</link>
		<comments>http://www.finereport.com/knowledge/install/oracle.html#comments</comments>
		<pubDate>Tue, 06 Jul 2010 06:54:45 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[安装部署]]></category>
		<category><![CDATA[报表安装部署]]></category>
		<category><![CDATA[报表教程]]></category>
		<category><![CDATA[数据库]]></category>

		<guid isPermaLink="false">http://www.finereport.com/CN/wordpress/knowledge/install/oracle%e6%95%b0%e6%8d%ae%e5%ba%93%e5%ae%9e%e7%8e%b0%e8%87%aa%e5%a2%9e%e9%95%bf%e5%88%97.html</guid>
		<description><![CDATA[SqlServer 和MySql都有自增长的功能，而Oracle必须接结合sequence序列（一般用于主键列）,并使用触发器才能够实现自动增长，具体步骤如下：
一、建表
create table list（id number,name varchar2(50)）;
二、创建序列

create sequence list_seq
minvalue 1
maxvalue 99999999999999
start with 1
increment by 1
cache 20
order
  

三、创建触发器

Create or replace trigger list_tg
Before insert on list
For each row
Begin
Select list_seq.nextval into :new.id from dual;
End;
/
  


四、插入数据
Insert into list values(&#8221;,&#8217;aaa&#8217;);
Insert into list values(&#8221;,&#8217;bbb&#8217;);
Select * from list ;
结果为:
   ID&#160;&#160;&#160;&#160;&#160;name
   1&#160;&#160;&#160;&#160;&#160;aaa
   2&#160;&#160;&#160;&#160;&#160;bbb
在Oracle 10g  的em [...]]]></description>
			<content:encoded><![CDATA[<p>SqlServer 和MySql都有自增长的功能，而Oracle必须接结合sequence序列（一般用于主键列）,并使用触发器才能够实现自动增长，具体步骤如下：</p>
<p><strong>一、建表</strong><br />
create table list（id number,name varchar2(50)）;</p>
<p><strong>二、创建序列</strong></p>
<ol>
<li>create sequence list_seq
<li>minvalue 1<span id="more-1996"></span>
<li>maxvalue 99999999999999
<li>start with 1
<li>increment by 1
<li>cache 20
<li>order
  </ol>
<p><img class="centered"  src="http://www.finereport.com/CN/wordpress/wp-content/uploads/images/sequence.jpg" alt="创建序列图解"></p>
<p><strong>三、创建触发器</strong></p>
<ol>
<li>Create or replace trigger list_tg
<li>Before insert on list
<li>For each row
<li>Begin
<li>Select list_seq.nextval into :new.id from dual;
<li>End;
<li>/
  </ol>
<p><img class="centered"  src="http://www.finereport.com/CN/wordpress/wp-content/uploads/images/trigger1.jpg" alt="创建触发器步骤1"><br />
<img class="centered"  src="http://www.finereport.com/CN/wordpress/wp-content/uploads/images/trigger2.jpg" alt="创建触发器步骤2"></p>
<p><strong>四、插入数据</strong><br />
Insert into list values(&#8221;,&#8217;aaa&#8217;);<br />
Insert into list values(&#8221;,&#8217;bbb&#8217;);<br />
Select * from list ;<br />
结果为:<br />
   ID&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;name<br />
   1&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;aaa<br />
   2&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;bbb</p>
<p>在Oracle 10g  的em 操作界面按照上图配置即可实现自增长序列，数据库端设置完成；在插入数据时自增长字段可由空值’ ’或null代替，如果insert 语句中列出了所插入的字段，如insert into list(name) values(’aaa’),则增长字段不用写 ；如模板所示为一简单的表单，ID字段绑定数据库中的自增长列，BS填报时，id字段不输入若输入任意数字时，数据库中都按照自增长的规律进行赋值，如下图所示：<br />
<img class="centered"  src="http://www.finereport.com/CN/wordpress/wp-content/uploads/images/insert1.jpg" alt="oracle中插入数据1"></p>
<p><img class="centered"  src="http://www.finereport.com/CN/wordpress/wp-content/uploads/images/insert2.jpg" alt="oracle中插入数据2"></p>
<p><img class="centered"  src="http://www.finereport.com/CN/wordpress/wp-content/uploads/images/insert3.jpg" alt="oracle中插入数据3"></p>
]]></content:encoded>
			<wfw:commentRss>http://www.finereport.com/knowledge/install/oracle.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Weblogic 10.1配置JNDI数据源</title>
		<link>http://www.finereport.com/knowledge/install/weblogic.html</link>
		<comments>http://www.finereport.com/knowledge/install/weblogic.html#comments</comments>
		<pubDate>Tue, 06 Jul 2010 06:50:05 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[安装部署]]></category>
		<category><![CDATA[报表安装部署]]></category>
		<category><![CDATA[报表教程]]></category>
		<category><![CDATA[数据库]]></category>

		<guid isPermaLink="false">http://www.finereport.com/CN/wordpress/knowledge/install/weblogic-10-1%e9%85%8d%e7%bd%aejndi%e6%95%b0%e6%8d%ae%e6%ba%90.html</guid>
		<description><![CDATA[一、JNDI连接的使用原理

在设计器中先用JDBC连接到数据库，建立数据库连接，然后用SQL或者其他方法创建数据集，使用数据集制作好报表，然后把建立的数据库连接从JDBC连接改成JNDI连接，保存模板，并部署至weblogic服务器。
服务器端配置数据源。
修改应用WEB-INF下的web.xml文件。


这样就可以通过WEB浏览器浏览到使用JNDI数据源的报表了。
二、我们以oracle 10g数据源制作的模板jndi.cpt为例来说明

设计器制作报表：
在设计器中用JDBC连接到oracle 10g数据库，使用数据库中的数据表student 制作如下模板jndi.cpt：
             
回到定义数据连接面板，将先前定义的数据库连接变为JNDI连接，设置JNDI的名字为oracle
             
保存模板至weblogic 10的应用目录WebReport/WEB-INF/reportlets下，保存为jndi.cpt。此时服务器端的数据源还没有配置，启动服务器并访问jndi报表会显示如下类似错误：
             
服务器端配置数据源:
打开weblogic 10 的控制界面：http://localhost:7001/console ；登录weblogic server 域选择 域结构&#124;服务&#124;JDBC&#124;数据源 打开数据源配置界面:
     [...]]]></description>
			<content:encoded><![CDATA[<p><b>一、JNDI连接的使用原理</b></p>
<ol>
<li>在设计器中先用JDBC连接到数据库，建立数据库连接，然后用SQL或者其他方法创建数据集，使用数据集制作好报表，然后把建立的数据库连接从JDBC连接改成JNDI连接，保存模板，并部署至weblogic服务器。
<li>服务器端配置数据源。
<li>修改应用WEB-INF下的web.xml文件。
</ol>
<p><span id="more-1995"></span></p>
<p>这样就可以通过WEB浏览器浏览到使用JNDI数据源的报表了。</p>
<p><b>二、我们以oracle 10g数据源制作的模板jndi.cpt为例来说明</b></p>
<ol>
<li>设计器制作报表：
<p>在设计器中用JDBC连接到oracle 10g数据库，使用数据库中的数据表student 制作如下模板jndi.cpt：<br />
             <img class="centered"  src="http://www.finereport.com/CN/wordpress/wp-content/uploads/images/dd1.jpg" alt="finereport报表数据集"></p>
<p>回到定义数据连接面板，将先前定义的数据库连接变为JNDI连接，设置JNDI的名字为oracle<br />
             <img class="centered"  src="http://www.finereport.com/CN/wordpress/wp-content/uploads/images/mod-dc.jpg" alt="修改报表数据连接"></p>
<p>保存模板至weblogic 10的应用目录WebReport/WEB-INF/reportlets下，保存为jndi.cpt。此时服务器端的数据源还没有配置，启动服务器并访问jndi报表会显示如下类似错误：<br />
             <img class="centered"  src="http://www.finereport.com/CN/wordpress/wp-content/uploads/images/error.jpg" alt="未配置数据源的错误"></p>
<li>服务器端配置数据源:
<p>打开weblogic 10 的控制界面：http://localhost:7001/console ；登录weblogic server 域选择 <b>域结构|服务|JDBC|数据源</b> 打开数据源配置界面:<br />
             <img class="centered"  src="http://www.finereport.com/CN/wordpress/wp-content/uploads/images/weblogic.jpg" alt="weblogic 10控制界面"></p>
<p>锁定并编辑该界面，新建一数据源，设置数据源JNDI名称为oracle（即制作模板时定义的JNDI名字），选择数据库类型及驱动点击“下一步”，如下图：<br />
             <img class="centered"  src="http://www.finereport.com/CN/wordpress/wp-content/uploads/images/new-jdbc.jpg" alt="新建jdbc数据源"></p>
<p>事务选项根据自己要求定义，在此默认，点击“下一步”<br />
配置连接属性：数据库名，URL，用户名及密码，建立weblogic 10 至oracle 10g的物理连接<br />
             <img class="centered"  src="http://www.finereport.com/CN/wordpress/wp-content/uploads/images/next-jdbc.jpg" alt="配置jdbc数据源属性"></p>
<p>测试刚定义的数据源连接：weblogic 服务器会呈现之前我们配置好的数据源，并提供连接测试，点击“测试配置”，弹出消息“连接测试成功”说明配置正确，点击“下一步”<br />
部署新建的JDBC数据源：选中需要部署该数据源的服务器，点击“完成”<br />
             <img class="centered"  src="http://www.finereport.com/CN/wordpress/wp-content/uploads/images/over.jpg" alt="部署jdbc数据源">
      </ul>
<p>服务器端的数据源配置好了，激活配置后部署的应用就能通过“oracle”这个桥梁（JNDI名字）与oracle数据库连接</p>
<li>修改应用WebReport/web-inf 下的web.xml文件:<br />
       在<web-app>  ……</web-app>之间增加如下语句：<br />
       <img class="centered"  src="http://www.finereport.com/CN/wordpress/wp-content/uploads/images/webxml.jpg" alt="修改web.xml文件"></p>
<li>配置完全，可以访问JNDI数据源报表了：<br />
       <img class="centered"  src="http://www.finereport.com/CN/wordpress/wp-content/uploads/images/success.jpg" alt="访问jndi数据源报表">
</ol></p>
]]></content:encoded>
			<wfw:commentRss>http://www.finereport.com/knowledge/install/weblogic.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
