存档

‘Miscellaneous’ 分类的存档,文章数:44

    WordPress模板使得不会网站开发的人也能拥有属于自己的个人博客。WordPress很好很强大。像我这样的对网站开发一窍不通的人也建立了个人博客:Sybase数据库技术,数据库恢复 https://www.dbainfo.net/

    但是,遇到一个小的问题。在可见即所得的页面上编写博客文章的时候,感觉格式工具比较匮乏,也就是没有word那么方便。尤其,图片还得一张一张的上传。创作博客文章需要时间,同时编辑博客文章的内容也耗时不少。以前,这是件痛苦的事情啊。

现在好了,利用Word2007可以快速的发布WordPress博客,省去了大把大把的时间呢。我喜欢在博客文章中通过截图来展示操作步骤,利用Word2007自动发布博客,省去了一张一张上传图片的麻烦。太方便了~~~ 以前觉得Word2007很不易用,现在觉得这个功能很好。

 

下面通过图片来演示用Word2007发布WordPress博客的过程。

点Word2007窗口左上角的圆形按钮(其中图形为office的Logo)

选择新建菜单

在数据库备份策略中,因为磁盘空间所限,需要删除N天前的备份文件。

本博客中有篇:实现连续N次备份数据库的脚本

其中有删除七日前的数据库备份文件的命令。那篇博客中利用了vbs处理日期的方法。但是,有点不妥当的地方,假如近七日内没有备份成功,或者说近七日内没有任何备份文件。如果删除了七日前的备份文件,那么就没有任何一个有效的备份文件了。这在数据库备份策略中是尤其需要注意的。

 

下面的命令不仅仅能够删除4天前的备份文件,而且能够保证有4天的备份文件。说白了也就是保留4份备份文件。呵呵。

del /f d:\123.txt && FOR /F "usebackq tokens=1,2,3*" %i IN (`dir E:\oracle\oradata\orcl /A-D /O-D ^| find ":"`) DO @echo %i %j=%l >>d:\123.txt
for /F "usebackq skip=5 delims== tokens=1*" %i in (d:\123.txt) do echo del /f %j

 

注释:skip=5表示跳过前4行记录。d:\123.txt是保存临时数据的文件,可以改成其他,比如: %temp%\123.txt

目录E:\oracle\oradata\orcl为备份文件所在路径。

如果放在bat脚本文件中执行上面的2行命令。需要将 %i之类的替换成 %%i

将上面2行命令的第2行中加粗字体的echo去掉,就能够实现删除操作了。 为了保险起见,先打印出删除文件的语句。

另:关于for循环命令的用法可以参考:CMD命令行:for命令详解[转]

 

 

 

 

 

 

讲FOR之前呢,咋先告诉各位新手朋友,如果你有什么命令不懂,直接在CMD下面输入:
name /? 这样的格式来看系统给出的帮助文件,比如for /? 就会把FOR命令的帮助全部显示出来!当然许多菜鸟都看不懂....所以才会有那么多批处理文章!!!!俺也照顾菜鸟,把FOR命令用我自己的方式说明下!
正式开始:

一、基本格式
FOR %%variable IN (set) DO command [command-parameters]
   %%variable   指定一个单一字母表示可替换的参数。
   (set)    指定一个或一组文件。可以使用通配符。
   command 指定对每个文件执行的命令。
   command-parameters
         为特定命令指定参数或命令行开关。
参数:FOR有4个参数 /d /l /r /f 他们的作用我在下面用例子解释
现在开始讲每个参数的意思

二、参数 /d
FOR /D %%variable IN (set) DO command [command-parameters]
如果集中包含通配符,则指定与目录名匹配,而不与文件
名匹配。
如果 Set (也就是我上面写的 "相关文件或命令") 包含通配符(* 和 ?),将对与 Set 相匹配的每个目录(而不是指定目录中的文件组)执行指定的

PowerDesign是Sybase推出的主打数据库设计工具。PowerDesign致力于采用基于Entiry-Relation的数据模型,分别 从概念数据模型(Conceptual Data Model)和物理数据模型(Physical Data Model)两个层次对数据库进行设计。概念数据模型描述的是独立于数据库管理系统(DBMS)的实体定义和实体关系定义。物理数据模型是在概念数据模型 的基础上针对目标数据库管理系统的具体化。

PowerDesigner 15下载地址:http://download.sybase.com/eval/PowerDesigner/PowerDesigner15_Evaluation.exe
库文件:
http://download.sybase.com/eval/PowerDesigner/PowerDesigner15_Library
PowerDesigner15.1破解补丁下载:
http://www.ali8ba.com/upfiles/pdflm15.rar

PowerDesigner 12.5下载地址:http://download.sybase.com/eval/PowerDesigner/powerdesigner125_eval.exe

PowerDesigner12.5破解补丁下载:
http://blogimg.chinaunix.net/blog/upfile2/080619224716.zip

破解方法:
下载 PowerDesigner12.5 后有一个 license.lic 和 pdflm12.dll 两个文件,license.lic 是用于破解序号的,pdflm12.dll 是用于替换原来安装后的文件,破解首先用 pdflm12.dll 替换安装要目录的 pdflm12.dll 文件,然后在PD的菜单中找到 Tools ==>> License Parameters ==>> 选第一个,然后先load找到 下载的 license.lic 文件,重启即破解完成。

Java数据库连接(JDBC)由一组用 Java 编程语言编写的类和接口组成。JDBC 为工具/数据库开发人员提供了一个标准的 API,使他们能够用纯Java API 来编写数据库应用程序。然而各个开发商的接口并不完全相同,所以开发环境的变化会带来一定的配置变化。本文主要集合了不同数据库的连接方式。

一、连接各种数据库方式速查表
   下面罗列了各种数据库使用JDBC连接的方式,可以作为一个手册使用。
   1、Oracle8/8i/9i数据库(thin模式)
Java代码  
Class.forName("oracle.jdbc.driver.OracleDriver").newInstance();   
String url="jdbc:oracle:thin:@localhost:1521:orcl"; //orcl为数据库的SID   
String user="test";   
String password="test";   
Connection conn= DriverManager.getConnection(url,user,password);   
 
   2、DB2数据库
Java代码  
Class.forName("com.ibm.db2.jdbc.app.DB2Driver").newInstance();   
String url="jdbc:db2://localhost:5000/sample"; //sample为你的数据库名   
String user="admin";   
String password="";   
Connection conn= DriverManager.getConnection(url,user,password);   
 

演示在用java连接Sybase ASE数据库。用了一个简单的java程序作试验。

第一步:获得jdbc for sybase驱动程序
下载JDBC驱动:http://www.sybase.com/detail?id=1009726

也可到CSDN下载:http://download.csdn.net/source/2697077
有jConnect6.05和jConnect5.5两种。jConnect6.05中包含jconn3.jar包,jConnect5.5中包含jconn2.jar包。建议最新的Sybase驱动jconn3.jar。不过我的这个例子很简单,两者都可以用。

下载:jconn3.jar ,下载:jconn2.jar

第二步:设置环境变量CLASSPATH

将下载下来的jconn2.jar或jconn3.jar放到目录D:\sybase\Shared\lib下。将环境变量CLASSPATH设置为:D:\sybase\Shared\lib\jconn2.jar

set CLASSPATH=.;d:\sybase\shared\lib\jconn2.jar;   (注意:第一个“.”,这个代表当前目录。)

第三步:编写一段简单的java程序。

下面的这段程序用jconn2.jar连接Sybase ASE15.0.3数据库并提取master数据库中的用户表的ID和name两列信息。

Sybase ASE数据库的ip地址为:192.168.0.168,端口:5000。登录sa的密码为:sybase

执行:select id,name,crdate from dbo.sysobjects where type='U'   这条语句返回当前数据库(这在url中指定!)中的用户表的id和name列。

JAVA版hello world全攻略
侯光敏

    看到很多技术网站的BBS上面充斥着java初学者的关于运行第一个java程序的求助信息,我觉得作为“过来人“很有写这篇文章的必要,因为他们遇到的都是些很低级的问题,但是让这些问题占据bbs上那么多宝贵的空间就太不应该了。
    要搞清楚的基本概念
    java是一种跨平台的网络语言,为了能够在不同平台上运行,它使用了虚拟机这个概念。后缀名为java的文件是源代码文件,它经过编译后生成的是 class文件。虚拟机执行的就是这些class文件,将它们转化成为不同平台能够运行的命令。这就是为什么java的效率比较低的原因。也是因为这个原 因,在java里没有其它语言的使用者熟悉的exe文件的概念。
    执行hello world的方法
    切记:在命令行中输入 javac 源文件名.java (编译)
                        java  源文件名      (执行,没有后缀)
这里说的是java application,里面包括main函数。
如果hello world是applet版的,在命令行中输入appletviewer 源文件名 (已经编译后的class文件)
如果class文件已经嵌入了html网页中,直接用IE打开就行了。
    application经常出现的错误
    系统提示Exception in thread "main" java.lang.NoClassDefFoundError。出现这个提示的原因可能有:
    1 你把文件名拼错了,java对大小写是敏感的。打错了当然找不到文件。
    2 虚拟机没有找到必须的类库。你可能没有在autoexec.bat文件中设置classpath。进入windows的运行,输入sysedit,然后在 autoexec.bat文件中加入这么一行:set classpath=你的jdk的安装目录\lib; 例如set classpath=c:\jdk1.3.0_02\lib; 保存退出后,你要在dos窗口的c根目录下执行一遍autoexec.bat文件已保证被设置了,当然,如果你愿意也可以重启机器。
    系统提示HelloWorld.java:1: Public class helloworld must be defined in a file called

前日误删除了C:\Documents and Settings\Administrator\.virtualbox目录,导致virtualbox上配置的redhat64bit虚拟机不能启动了。

试图拷贝一个其它虚拟机的xml文件修改一下,但是不可以。提示物理盘的uuid不匹配。那个虚拟机的xml文件丢失了,那么此虚拟机vdi文件上记录的uuid就无从得知了。

难道此redhat64bit虚拟机就不能用了?文件好几个G呢,删除了又太可惜,重装一遍很麻烦。

最后,在网上找到一个解决的办法:

利用virtualbox自带的命令行工具VBoxManage.exe 对残留的vdi虚拟机文件进行克隆,最后会重新生成一个uuid。

D:\Program Files\Oracle\VirtualBox>VBoxManage.exe clonehd /?
Oracle VM VirtualBox Command Line Management Interface Version 3.2.6
(C) 2005-2010 Oracle Corporation
All rights reserved.
Usage:
VBoxManage clonehd          <uuid>|<filename> <outputfile>
                            [--format VDI|VMDK|VHD|RAW|<other>]
                            [--variant Standard,Fixed,Split2G,Stream,ESX]
                            [--type normal|writethrough|immutable]
                            [--remember] [--existing]
Syntax error: Mandatory output file parameter missing

 

步骤一:

VBoxManage.exe clonehd D:\virtual-machine\linux5_64bit\linux5_64bit.vdi  D:\virtual-machine\linux5_64bit\linux5.vdi

耐心等待一会之后,会在命令行的下面显示一个重新生成的uuid,此uuid和D:\virtual-machine\linux5_64bit\linux5.vdi中的磁盘物理uuid是一致的。

步骤二:

在VirtualBox.xml文件中有:

<MachineRegistry>
      <MachineEntry uuid="{014d4435-25a9-4ce3-9aa6-ea18cc407698 }" src="Machines\linux5_64bit\linux5.xml "/>
      <MachineEntry uuid="{4d307441-f7a7-4196-8dee-d4d6910b0bae}" src="Machines\VMWIN7\VMWIN7.xml"/>
      <MachineEntry uuid="{8046d767-abf4-4eb5-bb73-451b54fbba38}" src="D:\virtual-machine\redhat64\redhat64.xml"/>
    </MachineRegistry>
对应本机安装的所有的虚拟机,记录各个虚拟机的配置xml文件的位置,以及每个虚拟机对应的机器id(machine uuid)。

步骤三:

找到redhat64bit虚拟机的配置文件Machines\linux5_64bit\linux5.xml,其中

<StorageController name="SATA &#x63A7;&#x5236;&#x5668;" type="AHCI" PortCount="1" useHostIOCache="false" IDE0MasterEmulationPort="0" IDE0SlaveEmulationPort="1" IDE1MasterEmulationPort="2" IDE1SlaveEmulationPort="3">
        <AttachedDevice type="HardDisk" port="0" device="0">
          <Image uuid="{4a0544d6-e496-4b21-af8c-e432410ea0a7 }"/>
        </AttachedDevice>
      </StorageController>
上面的image uuid就是通过VBoxManage.exe clonehd重新生成的硬盘id。

步骤四:

linux5.xml中

<Machine uuid="{014d4435-25a9-4ce3-9aa6-ea18cc407698 }" name="linux5" OSType="RedHat_64" lastStateChange="2010-08-16T10:41:07Z">

014d4435-25a9-4ce3-9aa6-ea18cc407698 要和VirtualBox.xml中的MachineEntry uuid 保持一致。

这样基本上重新打开以下virtualbox虚拟机,就能使用redhat64bit虚拟机了。呵呵。

参考:http://www.modhul.com/2009/06/17/how-to-clone-or-copy-a-virtualbox-virtual-disk/

————————————————————————————————-
—- 本文为andkylee个人原创,请在尊重作者劳动成果的前提下进行转载;
—- 转载务必注明原始出处 : http://www.dbainfo.net
—- 关键字:virtualbox xml hard disk uuid  VBoxManage.exe clonehd
————————————————————————————————-