Oracle 服务控制批处理

@echo off
rem author tunpishuang(http://tunps.com)
title Oracle服务控制
goto menu
:view
tasklist /fi "imagename eq oracle.exe" | find /i "oracle.exe" >null
cls
if errorlevel 1 (echo 【oracle没有运行】) else (echo 【oracle正在运行】)
goto menu
:start
net start OracleOraDb10g_home1TNSListener
net start OracleOraDb10g_home1iSQL*Plus
net start OracleServiceORCL
net start OracleDBConsoleORCL
rem net start OracleJobSchedulerORCL
echo 【已成功开启】
goto menu
:kill
net stop OracleDBConsoleORCL
rem net stop OracleJobSchedulerORCL
net stop OracleOraDb10g_home1iSQL*Plus
net stop OracleOraDb10g_home1TNSListener
net stop OracleServiceORCL
echo 【已成功关闭】
goto menu
:manual
sc config OracleDBConsoleORCL start= demand
sc config OracleOraDb10g_home1iSQL*Plus start= demand
sc config OracleOraDb10g_home1TNSListener start= demand
sc config OracleServiceORCL start= demand
echo 【已设定成功】
goto menu
:quit
exit /b
:menu
echo v - 查看oracle服务状态
echo s - 开启oracle服务
echo k - 关闭oracle服务
echo m - 设定oracle服务为手动
echo q - 退出
set /p inputStr=请选择:
if "%inputStr%"=="v" goto view
if "%inputStr%"=="s" goto start
if "%inputStr%"=="k" goto kill
if "%inputStr%"=="q" goto quit
if "%inputStr%"=="m" goto manual

因为Oracle数据库确实是一个庞然大物,在测试环境中使用Oracle,希望能随时轻松的启动或者停止Oracle的服务,所以想到了写个批处理脚本出来。我股沟了一下,发现网站的控制脚本都分为两个bat文件,一个专门用来开,一个专门用来关。比如这个还有这个…,不爽,集成到一个文件。通过判定当前是否存在oracle.exe进程来判定服务是否启动才是王道。 有几个需要注意到的地方。 1. 首先是通过tasklist来判定进程状态,返回的errorlevel就能知道oracle进程是否运行。 2. 需要将所有服务设定为手动,这样服务才不会随系统启动而启动,也就是不会让系统开机的时候一直卡在“欢迎”界面。 3. oracle这几个服务各司其职,并且互相具有依赖性,所以启动的时候要找准启动顺序 TNSListener->Service->DBConsole,那个JobScheduler服务一般不需要,关闭服务的时候就不需要顺序了,系统自动解决依赖性。详见此文 4. 这个脚本控制的服务名称根据不同的环境是有变化了,我这个oracle版本是10g,sid名是ORCL,HOME_NAME是home1,所以使用前需要更改,也许有时间我会找找方法能得到这些变量值,然后改进,改成通用的,那就牛逼了。

google受牵连?

总说周知google.cn 自动跳转到google.com.uk 同时不带censor,gfw当然理所当然的ban掉这些关键字。 但是今天下午访问google.com.uk / google.com搜索一般的关键字都会被重置。 比如搜索“test”,网址

http://www.google.com.hk/search?hl=zh-CN&source=hp&q=test&meta=&aq=f&aqi=g10&aql=&oq=&gs_rfai=

http://www.google.com/search?hl=en&source=hp&q=test&aq=f&aqi=g10&aql=&oq=&gs_rfai=

都被重置了,经过测试搜索任何关键字,更不用那些敏感词,都会被重置。 但是通过IE 8搜索栏或者Firefox的搜索栏非敏感词都能够被搜索,还是以搜索“test”为例子 Firefox搜索url

http://www.google.com/search?q=test&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-GB:official&client=firefox-a

IE搜索url

http://www.google.com.hk/search?q=test&rls=com.microsoft:zh-cn:IE-SearchBox&ie=UTF-8&oe=UTF-8&sourceid=ie7

都能正常访问。 到豆瓣google小组,发现一个帖子说这次封了.google和rfa关键字,而无辜的Google搜索结果页也确实出现了rfa关键字,难道你没有看到?恩,红色的gs_rfai参数就是了。 那么rfa是啥呢?请使用和谐百度获取答案

google受牵连?

解决方案

  1. 用浏览器的搜索工具栏
  2. 去掉gs_rfai参数。在“搜索设置”中“查询建议” 勾选“不在搜索框内提供查询建议。”

enter image description here

  1. Google Ajax Search API,因为可以通过https搜索,所以还能搜索不河蟹的词。如果你没有编程的爱好,那可以直接使用这个API的Hello World

  2. Gmail实验室里面的启动“Google搜索”,

enter image description here

原理和方案2一样。

参考

总结

这个事情说明了受牵连了也无处诉苦,因为我是牛逼闪闪的GFW。

HTTP 301跳转

博客搬家,但是以前域名有一些流量需要保留,希望通过修改http头,把状态码改为301自动转向到新域名,可以通过php实现,因为对urlwrite不是很了解,所以昨天晚上看了一下apache文档,了解了一下mod_rewrite,将一下代码贴到网站根目录下面的.htaccess文件里面。

# BEGIN WordPress
<ifmodule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^(.*)$    http://tunps.com/$1 [R=301,L]
</ifmodule>
# END WordPress

这样可以实现“全部跳转”,也就是可以跳转到具体的页面,比如访问 http://techguru.cn/about 就会跳转到 http://tunps.com/about ,从而实现“无缝衔接”。

windows自动更新vbs脚本

http://community.spiceworks.com/scripts/show/82-windows-update-agent-force-script-email-results-version-2-6

windows自动更新vbs脚本

这个脚本可以下载所有本机上未安装的更新,但这个脚本需要下载windows update agent,如果本地安装的agent版本大于代码上的版本就直接安装,如果小于就下载指定url的agent,并手动安装,且还需要重新启动。可以通过通过邮件发送安装情况。很多的可选项,代码上都有注释,就不多解释了。 我觉得这个脚本在网吧这种环境中比较实用,搞桌面部署(desktop deployment)这块的,强制安装,强制重启动,好拉风。 ps:这个日志字太多了,tinymce一卡一卡的,在记事本写了来,再拷到tinymcr。

y450a tsi(h)安装mac os x 10.5.7(iATKOS v7)

最近比较烦,无聊到装mac os x玩。mac对硬件比较挑,安装的成败很可能是硬件驱动不适合造成的,听说mac系统对nforce主板兼容性最差,可是我在8个月前把mac装在我的nforce板子的台式机上却跑的尚好。这次在联想笔电y450a tsi(h)上安装。

y450a tsi(h)的配置为:

  • Intel 酷睿2双核 T6600
  • NVIDIA GeForce GT 240M
  • Intel GM45+ICH9M
  • Intel 5100 AGN
  • broadcom bcm5784m
  • Realtek ALC269 @ Intel 82801IB ICH9
  • Synaptics PS/2 Port TouchPad
  • PS/2 标准键盘

首先需要:

  1. iATKOS_v7.iso
  2. Chameleon Instal for windows
  3. Leopard hd install helper
  4. Kext Helper b7
  5. Broadcom_5784m.zip(墙外)Broadcom_5784m.zip(墙内)
  6. PlistEditPro (可选)
  7. 非和当前系统统一磁盘的任何硬盘、移动硬盘、CD-ROM、U盘上的winpe系统(比如老毛桃的,带磁盘管理工具,比如disk genius、winpm)
  8. NVinject.zip

安装mac的方法很多,有硬盘安装,虚拟机安装..在这里我只写硬盘安装。

首先用windows的系统自带的磁盘管理工具将其中的一个分区分为两个分区:

y450a tsi(h)安装mac os x 10.5.7(iATKOS v7)

右击H盘,然后点“压缩卷”,输入的值得留出5到7G的空间放iATKOS_v7.iso,将这两个分区都“快速格式化”为FAT32格式的,这样在接下来的安装相当中才能识别出来这两个分区。

然后打开Leopard hd install helper ,镜像文件为iATKOS_v7.iso的位置,目标分区就是如上图放iATKOS_v7.iso的分区,如图:

y450a tsi(h)安装mac os x 10.5.7(iATKOS v7)

点“开始!”,完成之后,安装Chameleon到系统中:

y450a tsi(h)安装mac os x 10.5.7(iATKOS v7)

重新启动机子,在windows启动管理器中有了两个选项

  • Windows 7
  • Chameleon

选择chameleon,然后选择进入iATKOS。

y450a tsi(h)安装mac os x 10.5.7(iATKOS v7)

点“继续”,接下来需要“抹盘”,抹盘这个单词比较专业,就是将我们第一个图中“mac目标分区”格式化为Mac OS扩展(日志式)文件格式

y450a tsi(h)安装mac os x 10.5.7(iATKOS v7)

选择“磁盘工具”,将“mac目标分区” “抹掉”,内部的操作就是用0填充磁盘数据

y450a tsi(h)安装mac os x 10.5.7(iATKOS v7)

然后选择目标宗卷安装,目标宗卷就是“mac目标分区”

y450a tsi(h)安装mac os x 10.5.7(iATKOS v7)

选择“自定义”,这里是关键的关键了,选择错误,很可能安装失败

y450a tsi(h)安装mac os x 10.5.7(iATKOS v7)

对于y450a tsi(h)的机子,我们需要选择:

  • Base System
  • SMBIOS-EFI AIR
  • Apple SMBIOS-28
  • 9.7.0 kernel voodoo
  • Temove TyMCE
  • nVidia GT200 EVGA
  • AHCI
  • Intel SATA/IDE
  • Voodoo HDA driver
  • Voodoo PS/2 driver
  • laptop battery(可选)
  • NTFS-3G
  • Broadcom BCM578x
  • 汉语
  • Post Install script
  • Chameleon v2
  • Speedstep driver(可选)
  • Throttling Control (可选)

然后大概是10多分钟的安装时间。安装完成后,重新启动电脑,USB启动盘启动到winpe,打开winpm将原来的windows系统分区“位置为活动”,这样才能进入系统。启动菜单选择Chameleon ,然后在进入的过程中按键盘F8,选择我们的mac系统进入,接下来是一系列的个人信息、时区、帐号、语言、输入法的设置,忽略不讲。现在的系统是无法上网的,因为BCM5784m的网卡并没有驱动起来,下载BCM5784m.zip,解压出来的kext文件里面有个plist文件用mac系统自带的文本编辑器或PlistEditPro打开,定位到IONameMatch String节点,节点值改为pci14e4,1693,保存后用kext helper b7安装这个kext。然后打开终端,运行sudo tcpdump -i en0 就可以上网了。显卡驱动需要使用NVinjecto.zip,安装方法和网卡类似,拖到kext helper b7里面,点easy install。现在的mac系统的安装就基本上告一段落了,在以后的使用中可能会出现kernel panic系统内核崩溃的情况,主要看人品了。

参考:

  1. 联想Y450a-tfo安装Snow Leopard不完整手记(32位下几近完美)
  2. 硬盘安装Leopard 适用于所有版本[附视频教程]
  3. iPC 10.5.6 安装教程(多图)

联想Energy Management 已停止工作

机子蓝屏了,重新安装了win 7系统。
装驱动的时候,把联想的电源管理软件energy management也装上了,启动的时候报错:

---------------------------
Microsoft Visual C++ Debug Library
---------------------------
Debug Assertion Failed!
Program: C:\Program Files\Lenovo\Energy Management\Energy Management.exe
File: f:\rtm\vctools\vc7libs\ship\atlmfc\src\mfc\wincore.cpp
Line: 624
For information on how your program can cause an assertion
failure, see the Visual C++ documentation on asserts.
(Press Retry to debug the application)

搜索 “lenovo energy management taskbar”,联想的论坛上已经有很多人碰到这种情况并认为是一个bug,当任务栏不是在默认的下方是就会报这样的错误(我喜欢任务栏放在右边)。解决的方法:
1.把任务栏放回下方
2.到官方下载最新版本4.3.1.2
http://driverdl.lenovo.com.cn/lenovo/DriverFilesUploadFloder/notebook//200911513365434202/Y450_WIN7_32bit_PM.exe

Google拼音 网络错误

windows用户修改%systemroot%\system32\drivers\etc\hosts 文件

linux用户修改/etc/hosts 文件

hosts文件新建一行写上:

74.125.47.139 clients2.google.com

保存。

插入外接鼠标自动禁用触控板

我的本本是y450a,当笔电使用鼠标来控制的时候,用键盘打字的时候很容易碰到触控板,发生误操作。

所以很有必要插入外接鼠标自动禁用触控板,下载 touchpad-fix.zip 文件,将里面的两个注册表文件1.reg和2.reg分别导入,注销Windows,重新登录就搞定了。

Synaptics的控制面板就会多出一个选项出来:

连接外部 USB 指向装置时禁用内部指向装置

小样,你隐藏得很深啊。具体的注册表文件内容就不去深究了,没兴趣。

mysql str_to_date 字符串转日期类型

酝酿

最近写的那个嘀咕备份程序,有个需要修改的地方。
首先来看看嘀咕api生成的任意一个含有<status>的xml文件 http://api.minicloud.com.cn/statuses/public_timeline.xml
里面的这个节点:<created_at>Mon Mar 15 02:01:51 +0800 2010</created_at>
created_at节点的意思是 这个元素创建的UTC时间戳。via
恕我无知,我确实不知道这个时间戳格式弄成这样有啥好处:

Sat May 02 20:32:02 +0800 2009
星期 月  日  时:分:秒  时区   年

所以开始在写表结构的时候,把这个字段用varchar来表示,这样的缺点就是无法对所有的嘀咕消息通过时间条件来查询。
其实还有一个缺点:http://api.minicloud.com.cn/statuses/user_timeline.xml?userIdOrName=tunpishuang&page=1 。
我写的代码是从第一页(page=1)一直到最后一页,page=1是最新的消息,也就是最新的消息先写入表中,这些记录的主键id=1,2,3,4…….这无非是一个order by id asc or desc的一问题,但是我以后还要通过其他的渠道向表插入新纪录,这样就混乱了timeline。
所有想扯了这么远,回归到正题就是将这个created_at的值转换成mysql能够识别的日期格式。

正题

mysql手册上发现了我们需要的函数str_to_date  http://dev.mysql.com/doc/refman/5.1/zh/functions.html

mysql> select str_to_date('Sat May 02 20:32:02 +0800 2009','%a %b %e %k:%i:%s +0800 %Y');
+----------------------------------------------------------------------------+
| str_to_date('Sat May 02 20:32:02 +0800 2009','%a %b %e %k:%i:%s +0800 %Y') |
+----------------------------------------------------------------------------+
| 2009-05-02 20:32:02                                                        |
+----------------------------------------------------------------------------+
1 row in set
mysql>

我发现我写东西都喜欢循循善诱,看来我很适合当老师。

《大学日本语》配套听力mp3下载

《大学日本语》四川大学出版社 王庭凯主编

为了节约钱,买了4册书,但是没有买磁带。心想网上会有mp3下载,可以只找到了kaoyansky.cn这个crap论坛,需要共享币,一点共享精神都米有。幸好有个好心的网友qq147859950 用邮件传给了我,万分感激。为了更广大人民的利益,我决定分一下流。

可以到http://www.rayfile.com/zh-cn/files/145b15a1-f766-11dd-b0ba-0014221b798a/ (失效)
http://www.rayfile.com/files/8abf39f3-0a48-11de-9fa8-0019d11a795f/(失效)

http://www.namipan.com/d/aed3dba3220fc264501f253c2845e7c53c064ee9be065f10 (Update,09.3.27)
http://www.damipan.com/file/1Fle9aI.html (大米盘,update,09.05.17)

http://vdisk.cn/down/index/4205028A9744 (速度挺快的,支持迅雷,就是有弹窗广告。update:2010.3.14)

下载,大小:261.9 MB,链接失效请留言告知。