显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

风之人生

人生如风,却无法如风般潇洒。

 
 
 
 
 
 

Eclipse 无法启动问题

2014-1-15 16:44:49 阅读88 评论0 152014/01 Jan15

今天在打开Eclipse 启动的时候出现了一个问题,当时的报错信息是Failed to create java virtual machine.如下图:

也不知道是具体问题的原因, 但是网上有人也遇到这样的问题,由此定位到问题可能出现在eclipse.ini文件的配置上,所以按照此人的方法修改了eclipse.ini文件(在eclipse的根目录),添加上一句:

-vm

C:\Program Files\Java\jdk1.7.0_45\bin

然后eclipse.ini看起来应该是这样:

-startup

plugins/org.eclipse.equinox.launcher_1.3.0.v20120522-1813.jar

-vm

C:\Program Files\Java\jdk1.7.0_45\bin

--launcher.library

plugins/org.eclipse.equinox.launcher.win32.win32.x86_1.1.200.v20120913-144807

-product

com.android.ide.eclipse.adt.package.product

--launcher.XXMaxPermSize

256M

-showsplash

com.android.ide.eclipse.adt.package.product

作者  | 2014-1-15 16:44:49 | 阅读(88) |评论(0) | 阅读全文>>

Java to Oracle failed when using random number

2013-12-27 10:59:38 阅读42 评论0 272013/12 Dec27

Today I got one guy saying he's got the problem when he tries to do the connection test for his program written in Java. He always has some connection to Oracle failed but didn't know why.

After carefully reviewed his program, we found that he's using some random generating method of Java in his program, such like java.security.SecureRandom, which is the standard API in Java, Among various methods offered by this class void nextBytes(byte[]) is one. This method is used for generating random bytes. Oracle 11g JDBC drivers use this API to generate random number during login. Users using Linux have been encountering SQLException("Io exception: Connection reset").

The problem is two fold

作者  | 2013-12-27 10:59:38 | 阅读(42) |评论(0) | 阅读全文>>

Python function with positional arguments and keyword argument

2013-12-23 11:16:28 阅读136 评论0 232013/12 Dec23

当我们要写一个Python 的函数的时候,我们有两种形式,在我们写参数时,可以选择两种形式,一种叫做位置参数(positional arguments), 另外一种叫做关键字参数(keyword argument):

例子如下:

位置参数:

def print_two(arg1, arg2):

print "arg1: %r, arg2: %r" % (arg1, arg2)

关键字参数:

def person(age=29, name='Jason', type='Emplyee'):

print "The age of this man is", age

print "the man's name is", name

print " This guy is a", type

这两种形式都很好理解,在Python里面我们有一个内置的机制可以直接读取参数, 就是在函数定义的时候使用*arg和**key,简单的来说,*name 表明了我们有个tuple 名叫name,他存储了我们的位置参数,而**key表示有个dictionary名叫key,这个dictionary存储着我们的关键字参数,那么有 了这么方便的内置变量,我们就可以使用tuple和dictionary通用的操作来操作我们的参数了。例子如下:

def cheeseshop(kind, *arguments, **keywords):

作者  | 2013-12-23 11:16:28 | 阅读(136) |评论(0) | 阅读全文>>

identify the space and tab in vim

2013-12-23 11:14:16 阅读13 评论0 232013/12 Dec23

在写Python程序时,我们经常会遇到一个问题,就是我们如何区别我们的Tab和space,因为有时候我们使用vi这种编辑器时,无法看到程序 里到底是使用tab或者是space.如果你从别处拷贝代码的时候,很有可能会导致tab和space混用。 根据PEP8的规范,我们最好统一我们的程序。那么,我们在vi里面该如何设置来避免这种问题呢,底下是我自己的一个方案。

:set expandtab

这个是表明我们每次在插入一个tab的时候,自动会把tab转换成成space,那么,你一定想知道,一个tab会被转换成多少个space呢? 其实这个可以通过tabstop来设置,例如

:set tabstop=4

这个设置了以后,会把以后输出的tab变成4个space,但是对于已经输入的内容是不起作用的,如果要把已有的内容中,所有的tab转换成4个space,还需要执行

:retab

最后,可以设置一个缩进的宽度shiftwidth或者sw,这个在写Python的时候也比较有用

:set shiftwidth=4

如果要想保持设置,记住把以上的设置加到你的.vimrc里面就行了。

作者  | 2013-12-23 11:14:16 | 阅读(13) |评论(0) | 阅读全文>>

Managing the Oracle Oracle Enterprise Manager Express

2013-12-23 11:11:10 阅读23 评论0 232013/12 Dec23

When you finished installing the Oracle database 12.1, you can use the new manage tool — Oracle Enterprise Manger Express, a light weight web-based tool to mange your database. This article tellls that how to configure the EM express before using it.

1. Check your listener status.

Run the command lsnrctl status by oracle user.

[oracle@oserver database]$ lsnrctl status

LSNRCTL for Linux: Version 12.1.0.1.0 – Production on 03-JUL-2013 15:11:07

Copyright (c) 1991, 2013, Oracle.  All rights reserved.

Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1521)))

STATUS of the LISTENER

————————

Alias      

作者  | 2013-12-23 11:11:10 | 阅读(23) |评论(0) | 阅读全文>>

Oracle 12c installation on CentOS 6.4 64bit

2013-12-23 11:07:50 阅读221 评论0 232013/12 Dec23

Oracle installation 12c installation on CentOS 6.4

1. Download the software from Oracle website:

http://www.oracle.com/technetwork/database/enterprise-edition/downloads/index.html

2. Get preparation for installation:

Here’s the package list from offical document:

binutils-2.20.51.0.2-5.11.el6 (x86_64)

compat-libcap1-1.10-1 (x86_64)

compat-libstdc++-33-3.2.3-69.el6 (x86_64)

compat-libstdc++-33-3.2.3-69.el6 (i686)

gcc-4.4.4-13.el6 (x86_64)

gcc-c++-4.4.4-13.el6 (x86_64)

glibc-2.12-1.7.el6 (i686)

glibc-2.12-1.7.el6 (x86_64)

glibc-devel-2.12-1.7.el6 (x86_64)

glibc-devel-2.12-1.7.el6 (i686)

作者  | 2013-12-23 11:07:50 | 阅读(221) |评论(0) | 阅读全文>>

如何用好你的sed

2010-8-5 17:36:41 阅读162 评论0 52010/08 Aug5

      我估计有很多人在做shell开发时,不会用到sed这个工具,我们经常不回去使用它,即使使用,也常常是做查找替换来使用,但是他的确是一个很强大的工具,有很多功能我们可能常常忽略掉。

       先来看看sed一般的用法,就是我们最常用到的直接替换,在这里注意,sed是一个流编辑器,什么是流呢, 如果你经常用管道的话,应该就很熟悉,可以把输入输出看成像流水一样。这边是一些替换的例子。

sed s/white/black/ <old >new #把old文件里的white替换成black 输出到new文件里,或者

sed s/white/black/ old >new  #或者

echo white | sed s/white/black #仅作测试

从上面的例子看到,sed命令实际由这几部分构成:

s  替换命令

/../../  分隔符

white  查找字符,实际上应该是正则表达式

black  替换字符

我们再来看一个例子,如果我们把/usr/local/bin替换成/usr/bin

那么我们可以这样写 sed 's/\/usr\/local\/bin/\/usr/bin/' <old >new

天啊,太麻烦了,必须要这样写么,未必,我们的分隔符实际上可以用其他的字符来代替的。

作者  | 2010-8-5 17:36:41 | 阅读(162) |评论(0) | 阅读全文>>

一半火焰,一半海水

2010-7-29 14:27:46 阅读136 评论0 292010/07 July29

纵观这几天的我们的A股市场,真的是如坐了火箭一样的往上窜,真的是到了只怕你买不到,不怕你涨不起来的地步了。看到了这个中国经济的晴雨表,我很欣慰,中国经济真是好啊。然而真的是这样吗。随便看看新闻吧,给我们带来温暖的也只有股市了。中国现在面临自我出生以来最严重的洪水灾难,从东三省,华北,南方长江沿线,无一幸免。

曾几何时,我们引以为荣的三峡工程,现在除了拿出来被人戏谑调侃之外,大概也没有什么作用了吧。大连那边的污染还没清干净,松花江听说现在又有化学原料桶冲入到松花江内,不知道多少人的饮水要受到影响,而我在相关的报道里又看到了一句话,"对周围群众的生活影响不大",其实我早就料到影响不大了,但是这些周围的人最起码能够知道,对他们的生活影响到底有多大,即使真的是影响不大。他们不想像被紫金矿业弄死的鱼一样,翻白肚的时候还不知道为什么。

希望我们的那些受灾的人们,能够团结起来,克服困难,早日回到家园。

我们不缺火焰,但我们现在更多的是海水。

作者  | 2010-7-29 14:27:46 | 阅读(136) |评论(0) | 阅读全文>>

Oracle Mutex

2010-7-24 21:27:05 阅读389 评论0 242010/07 July24

在Oracle 10g release2里面,引入了一个新的锁机制,类似于以前的latch,叫做mutex.以下是关官方说明:

Mutex is the short form mutual exclusion object.

A mutex, similar to a latch, is a low-level serialization mechanism used to control access to a shared data structure in the SGA.

Serialization is required to avoid an object being:

- Deallocated while someone is accessing it

- Read while someone is modifying it

- Modified while someone is modifying it

- Modified while someone is reading it

Mutexes can be defined and used in different ways, as in the following examples:

- Each structure being protected by a mutex can have its own mutex (for example, a parent cursor has

作者  | 2010-7-24 21:27:05 | 阅读(389) |评论(0) | 阅读全文>>

Oracle EM重建

2010-7-7 20:30:44 阅读1298 评论0 72010/07 July7

最近比较忙,好久没有更新博客了,想想还是写一篇吧。

在oracle 10g中,EM是一个很重要的管理工具,由于种种原因,而我们经常会出现无法访问EM的情况,例如以下:

我们可以重建EM来解决这种类似的问题。解决方法如下

1. Drop the dbcontrol

[oracle@localhost ~]$ emca -deconfig dbcontrol db

STARTED EMCA at Jul 7, 2010 7:39:51 PM

EM Configuration Assistant, Version 10.2.0.1.0 Production

Copyright (c) 2003, 2005, Oracle.  All rights reserved.

Enter the following information:

Database SID: primary

Do you wish to continue? [yes(Y)/no(N)]: Y

Jul 7, 2010 7:39:59 PM oracle.sysman.emcp.EMConfig perform

INFO: This operation is being logged at /u01/app/oracle/product/10.2.0/db_1/cfgtoollogs/emca/primary/emca_2010-07-07_07-39-51-PM.log.

作者  | 2010-7-7 20:30:44 | 阅读(1298) |评论(0) | 阅读全文>>

SHELL入门(1)

2010-5-27 13:47:26 阅读199 评论0 272010/05 May27

这不是一篇正式的技术文档,只是一个入门的简介,大牛和技术高手请绕道,省的耽误您的时间。如果你觉得有哪里写的不对,希望指教。

1.shell 是什么?

       说这个问题之前,首先我要问你,如果你以前使用的是windows,你用什么方法和操作系统交互?大多数情况下,应该是鼠标的点击。那么,忘记以前你的那些习惯吧,欢迎来到Linux/Unix世界,我们对于操作系统内核,也就是其核心功能,我们使用的是另外一种全新的交互方式,我们通过shell(外壳)和kernel(内核)交互。那么很简单,shell就是我们和unix内核交互的工具,我们通过shell告诉os我们要做什么,他做完后再将结果返回给shell.如下图:

2. 为什么要用shell?

       在讲这个问题之前,有几个概念要提一下,在编程语言里,有一类叫做编译型语言,例如Pascal, C,C++,Java都属于这一类,他们的特点是高效,因为把源代码转化成目标代码后,就能运行,但是同时他们也具有很明显的缺点,他们由于运行在底层,多半是和一些字节,整数等对象打交道,所以例如文件操作很难用简单的代码来实现。而我们的shell属于解释型的语言,他由解释器读入程序代码,然后在通过他来进行转化,变成自己内部的形式,然后在执行。所以,如此一来,shell的优点和缺点就很容易想到了。缺点就是效率低,他的效率要远远低于编译型语言,所以我很不明白的是很多人经常用php和java来

作者  | 2010-5-27 13:47:26 | 阅读(199) |评论(0) | 阅读全文>>

Oracle Installation in fedora 12

2010-5-26 17:48:11 阅读142 评论0 262010/05 May26

1. Check the prerequisite software.

[root@coolma ~]# grep MemTotal /proc/meminfo

MemTotal:        1276452 kB

[root@coolma ~]# grep SwapTotal /proc/meminfo

SwapTotal:       2555896 kB

[root@coolma ~]# df -k /tmp

Filesystem           1K-blocks      Used Available Use% Mounted on

/dev/mapper/vg_coolma-lv_root

                      54964304   5825496  46346772  12% /

2. Configure network.

[root@coolma ~]# cat /etc/nsswitch.conf | grep hosts

#hosts:     db files nisplus nis dns

hosts:      files dns

[root@coolma ~]# hostname

coolma.sjtu.edu.cn

[root@coolma ~]# domainname

(none)

3. Create the user and group

[root@coolma ~]# /usr/sbin/groupadd oinstall

作者  | 2010-5-26 17:48:11 | 阅读(142) |评论(0) | 阅读全文>>

Oracle 的正则表达式

2010-5-12 18:38:28 阅读104 评论0 122010/05 May12

       做过开发的朋友可能都会对正则表达式这个东西不太陌生,一般的开发语言里面都有对正则表达式的支持,而在Oracle10g中,也加入了对正则表达式的支持。主要是通过4个函数来实现的:REGEXP_LIKE、REGEXP_INSTR、REGEXP_SUBSTR、和REGEXP_REPLACE。 它们使用POSIX标准的正则表达式代替了老的百分号(%)和通配符(_)字符。

     那么我们来看看这个正则表达式怎么用。

特殊字符:

'^' 匹配输入字符串的开始位置,在方括号表达式中使用,此时它表示不接受该字符集合。

'$' 匹配输入字符串的结尾位置。如果设置了 RegExp 对象的 Multiline 属性,则 $ 也匹配 'n' 或 'r'。

'.' 匹配除换行符 n之外的任何单字符。

'?' 匹配前面的子表达式零次或一次。

'*' 匹配前面的子表达式零次或多次。

'+' 匹配前面的子表达式一次或多次。

'( )' 标记一个子表达式的开始和结束位置。

'[]' 标记一个中括号表达式。

'{m,n}' 一个精确地出现次数范围,m=<出现次数<=n,'{m}'表示出现m次,'{m,}'表示至少出现m次。

'|' 指明两项之间的一个选择。例子'^([a-z]+|[0-9]+)$'表示所有小写字母或数字组合成的字符串。

作者  | 2010-5-12 18:38:28 | 阅读(104) |评论(0) | 阅读全文>>

日记账删除时FRM-40501

2010-5-11 21:20:02 阅读509 评论0 112010/05 May11

  今天,有个用户反映在删除batch时,出现了这么一个错误,FRM-40501 ORACLE error: unable to reserve record for update or delete.经过分析,估计是什么东西把一张基表锁住,就是JE_GL_BATCHES这张表。可以通过以下SQL来检查。

SELECT aob.object_name,

aob.object_id,

vob.process,

vob.session_id

FROM all_objects aob, v$locked_object vob

WHERE aob.object_id = vob.object_id

and aob.object_name like '%JE%GL%';

果然查处有个session将此表锁住,然后我们就可以找到这个session,v$seesion看了一下状态,是inactive,估计是客户端上的僵死进程,所以我们可以使用alter system kill session 'sid,serial#'来杀掉他。

DECLARE

v_sid NUMBER := &sid;

作者  | 2010-5-11 21:20:02 | 阅读(509) |评论(0) | 阅读全文>>

分手指南--(转自连岳)

2010-4-26 16:19:58 阅读136 评论0 262010/04 Apr26

1. 分手的可能性永远存在,任何行为与契约都保证不了,我跟他上床了,我跟他结婚了,我跟他有孩子了,我重病快死了,我长得帅,我有钱....任何一条或几条都绑不住人。爱人有腿,随时会走,这种危机感会让你时刻证明自己值得爱。

2. 没有绝对合理的分手理由。再烂的人也不会觉得:就是应该跟我分手。所以分手的理由生硬粗糙、无迹可寻是正常的,不过是“我不再爱你了”的变种。这说明主动提出分手的人,最好说:我不爱你了。别东拉西扯。

3. 不是“他们不爱你”,是他不爱你。你的价值不会下降,不要试图证明你可以更可爱,你证明过了,别做无用功。

4. 自残乃分手大忌,无论这个方法多么深受广大情人喜爱,也无论它在中国传统爱情关系中占据多么重要的地位。切记:我们绝不会因为一个人血肉模糊就爱他。

5. 也别违心的祝福他,以德报怨不是常人能做的事情,以直报怨即可,不要为了展示一时风度而懊恼。

6. 干净切割。不要尝试发现他“是不是还有一点爱我呢”?你多半找得到这种爱的遗迹,这会让你产生等候宠幸的侥幸心理;也不要尝试发现他“离开我是不是生活得 不开心呢”?你一定找得到他的不开心,就像你找得到任何人的不开心一样,这会让你产生他浪子回头的侥幸心理。侥幸催人老,人老更侥幸。

7. 不要过度倾诉,他人的不幸是我们的快乐源泉。像那句俏皮话所说的:有什么不开心的事?说出来让我们开心开心。

8. 不要迅速寻找替身。也许人人都有几个暗恋者,更有不少借着提供肩膀吃豆腐的小人。你若试图用一个新悲剧取代一个悲剧,总是会得到丰富的回报:你将得到两个悲剧。

作者  | 2010-4-26 16:19:58 | 阅读(136) |评论(0) | 阅读全文>>

查看所有日志>>

 
 
 
 
 
 
 
 

上海市 浦东新区 金牛座

 发消息  写留言

 
一介草民,苟活于上海滩,以甲骨文为生,偶尔对一些国家大事有些兴趣,日常无事常以丝竹之声为乐。
 
近期心愿He who dies with most toys dies.
博客等级加载中...
今日访问加载中...
总访问量加载中...
最后登录加载中...
 
 
 
 
 

日志分类

 
 
日志分类列表加载中...
 
 
 
 
 
 
 
模块内容加载中...
 
 
 
 
 
 
 
 
 
 
 
网易云音乐 曲目表歌词秀
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
心情随笔列表加载中...
 
 
 
 
 
 
 
列表加载中...
 
 
 
 
 
 
 
模块内容加载中...
 
 
 
 
 
 我要留言
 
 
 
留言列表加载中...
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2014

创建博客 登录  
 加关注