US Travel Tips (OOW, ACE Directors) – Cont.

之前写过一篇:OOW US Travel Tips for ACE Director – Visa, Hotel, Car Rental, etc.,还是颇受好评的,为了纪念今年美国签证系统崩溃了好多天,现在补一个更新的问答版。

什么资格适合递签(非面签)?

之前的美国签证过期不到4年,或者未满14周岁或80周岁以上。所以我去年的签证是今年8月份到期,我夫人的签证去年8月份就到期了,我儿子4岁从来没去过美国,这样的三个人可以全部都递签,而无需面试。

如果我符合递签条件,但是为了陪必须要免签的其它人(比如父母、妻子)一起,也可以选择面签吗?

这是很多人纠结的地方,因为在大使馆签证页面中有一句话“所有符合中信代传递续签条件的申请人通常必须使用中信代传递服务”,看上去似乎这是强制的,并且中信银行的职员也通常会告知,如果你满足递签条件却执意要去面签,是有可能会被拒绝进入美国大使馆的,理由是本来人就那么多了,你符合递签条件,就别来裹乱了。 但是实际上,还是有很多人通过的,参看穷游的经验,并且根据我的面签经验,在进入使馆之前,也没有人详细查看你是否符合免面签条件。但是,其实让父母单独去面签,也并不是什么大事儿,美国签证官都是会说中文的。今年我夫人的父母(我的丈人、丈母娘)会跟我们一起去美国,两个人都是2014年新护照、白本、两个人去的、没有提交什么房产证明、旅游计划等等东西,问了两个问题就双双通过了。主要问题大约都是去干嘛?钱谁出?

递签的话,人在北京,是选择广州使馆还是北京使馆?

根据今年递签的经验,无论人在哪里,全部都选择广州使馆,否则中信银行会不接受递签申请。在填表的过程中有两个地方需要选择使馆。 第一个是填DS160的时候,最开始的页面,下拉列表中要选择广州(当然,如果你是面签的,住在北京就还是选择北京)。 DS160选择广州使馆 第二个是CGI网站,如果选择了免面签代传递服务,那么到了Step 7的时候,会自动询问你是不是选择“中国,广州”作为您此次签证的申请地点,我之前以为这是Bug,但是实际上这是正常的,直接选择“是”即可。CGI网站填写步骤参看我之前的文章

擦,眼睛都填花了好不容易填完,选的是北京,确认页都打出来了,难道还要再重新填一份DS160?

没错,是要重新生成一份DS160的申请,但是,所幸绝大部分信息都可以不用再填。操作方式是:

  • 如上一条所述,在一开始下拉列表中选择广州;
  • 然后选择下面的“Retrieve An Application”;
  • 输入Application ID(这在之前的DS160确认页上就有);
  • 输入姓、出生年份、安全问题的答案(希望你还记得);
  • 这时候会出现两个选项,说确认页已经出了,要不就是查看确认页,要不就是创建一个新申请;
  • 毫不犹豫选择创建新申请。

Screen Shot 2014-08-25 at 2.36.37 PM 在新申请中,几乎90%的原来填过的信息都会自动填好,只需要点Next就可以,需要重新填的大概是行程计划部分和最后数十个无脑选No的安全问题。

签证的照片有什么要求?

官方要求是6个月之内的近照,如果还在使用一年前的照片,特别是一看就跟上一次签证一模一样的照片,中信银行是会拒收的。虽然我上一年混过去了,但是强烈建议大家每年申请的时候都现拍一张,没几个钱。注意:美国签证的照片是特殊尺寸,不是普通的2寸,而是51*51的size。

给孩子办签证有什么要注意的?

基本上没有特别需要注意的,未满14周岁的孩子是免面签的,但是递交给中信银行的材料中需要有出生证明的复印件和父母4年内的美国签证复印页(我不确认如果父母都没有去过美国需要提交什么?但是我想未满14周岁应该是不可以一个人就去美国的吧,所以总得有个陪同者)。之前不知道,又跑了一趟复印店。

今年美国签证系统崩溃,对签证批准时间有影响吗?

似乎没有看出太多影响,中信银行员工明确告知最多2周就可以拿到签证,这跟之前的说法是一样的。

之前文章遗漏的一个美国租车的问题。在美国租车,用国内的驾照可以吗?

可以,一点儿问题没有。并且无需翻译英文版本,无需公证(如果你细心,可以看到国内的驾照上本来就是双语的,有英文)。拿着就去,去了就租,租了就开走,违反交规还能不掏钱(最后这句当我没说)。

在机场免税店买化妆品便宜,还是在梅西百货买便宜?

这问题不应该由我一个大老爷们儿来回答,不过如果真要回答,我的答案是:It depends。梅西百货是有税的,纯看单品价格确实是机场免税店便宜一点点;但是梅西百货通常会有各种促销优惠活动,比如买几送几啥的,这样一算,就还是梅西百货便宜。依我说,你也不是玩代购倒货的,就别纠结这点儿钱了,痛痛快快逛逛旧金山,觉得好那就买吧,不管怎么样,也比国内便宜。别非等到回去的机场免税店,万一没想要的款呢?

在Outlets买什么?

好像没见到在Outlets买化妆品的,都是去买仔裤、衣服、包。大的旅行箱在梅西百货买会便宜一些,而Outlets嘛,中国人去没有不看Coach的,憋坏了的中国人,一口气买十几个甚至几十个Coach的包很常见;仔裤的话,Levis的价格只有国内的三分之一;AF的T恤、圆领衫也绝对物超所值;其它的什么Prada、Gucci、LV,不是哪个Outlets都有的,要看。这里是美国Premium Outlets的网站,去之前可以先搜一下有没有想买的品牌。加州有11个Premium Outlets,其中旧金山旁边的是Petaluma Village和Gilroy。

Oracle Policy-Managed Cluster – Growing for DBaaS

Policy-Managed Cluster在Oracle 11gR2中被引进,在Oracle 12c中使用dbca创建RAC数据库的时候,Policy-Managed选项已然成为默认值。 Policy-Managed RAC

那么到底什么是Policy-Managed方式的集群和数据库呢?与以前的Admin-Managed方式有何区别?何种环境适合使用这种新的方式进行管理?本文尝试回答这些问题,并且做出简单的测试。

什么是Policy-Managed方式?

基于策略的管理方式,是以服务器池(Server Pools)为基础的,简单地说,就是先定义一些服务器池,池中包含一定量的服务器,然后再定义一些策略,根据这些策略Oracle会自动决定让多少数据库实例运行在池中的几台机器上。数据库实例名后缀、数据库实例个数、所运行的主机,这些都是通过策略决定的,而不是数据库管理员事先定好的。

与Admin-Managed方式有何区别?

实际上上面的表述已经明确说明了,Policy-Managed和Admin-Managed方式的差别。让我们再回顾一下,在以往我们创建一个RAC数据库大概是怎样的方法,我们在dbca的界面中会选择要将数据库实例运行在整个集群中的几台机器上,或者是2台或者是3台,甚或是更多,但是只要在安装的时候选定几台机器,那么以后如果不做增减节点的操作,就始终会在这几台机器上运行。而且,通常会根据主机名称的排序自动将每台主机上的数据库实例依次命名为dbname1到dbnameN。这些在管理员安装完毕以后,都不会再自动变化,这就是Admin-Managed方式。

何种环境适合使用这种新的方式进行管理?

当管理大量的服务器集群,并且在这些集群中运行着多种不同重要程度,不同策略的RAC数据库时,为了简化管理,建议使用Policy-Managed方式,实际上Oracle也建议只有在超过3台的服务器的时候才使用Policy-Managed来管理整个数据库集群。想象一下使用Policy-Managed方式可以达到的效果:如果我们有10台服务器组成,根据不同的应用的重要性定义服务器池的关键程度,然后在其中某些机器意外停机的情况下,仍然可以自动地保持足够多的机器给重要的系统提供数据库服务,而将不关键的系统数据库服务器个数降低到最低限度。

那么Policy-Managed方式到底长什么样?

在默认安装完Oracle 12c的RAC数据库之后,发现数据库实例始终只会启动在一个节点中。检查服务器池配置。

[oracle@dbserver2 ~]$ srvctl config srvpool
Server pool name: Free
Importance: 0, Min: 0, Max: -1
Category:
Candidate server names:
Server pool name: Generic
Importance: 0, Min: 0, Max: -1
Category:
Candidate server names:
Server pool name: orcl_pool
Importance: 0, Min: 0, Max: 1
Category: hub
Candidate server names:

Free池和Generic池是默认存在的,orcl_pool池则是在dbca创建数据库的时候由我们自己定义的。其中Min: 0, Max: 1表示在这个池中最少允许有0台机器,最多允许有1台机器被使用。所以这也造成了使用这个服务器池的数据库实例始终只会启动在一个节点中,即使这在我们最初的定义中是一个RAC数据库。

当前的数据库实例启动在节点2中,比较一下节点1和节点2服务器使用情况的输出。

[grid@dbserver2 ~]crsctl status server dbserver1 -f
NAME=dbserver1
MEMORY_SIZE=3954
CPU_COUNT=1
CPU_CLOCK_RATE=2
CPU_HYPERTHREADING=0
CPU_EQUIVALENCY=1000
DEPLOYMENT=other
CONFIGURED_CSS_ROLE=hub
RESOURCE_USE_ENABLED=1
SERVER_LABEL=
PHYSICAL_HOSTNAME=
STATE=ONLINE
ACTIVE_POOLS=Free --此处显示未Free,表示节点1中不属于任何正在运行的服务器池资源。
STATE_DETAILS=
ACTIVE_CSS_ROLE=hub

[grid@dbserver2 ~] crsctl status server dbserver2 -f
NAME=dbserver2
MEMORY_SIZE=3954
CPU_COUNT=1
CPU_CLOCK_RATE=2
CPU_HYPERTHREADING=0
CPU_EQUIVALENCY=1000
DEPLOYMENT=other
CONFIGURED_CSS_ROLE=hub
RESOURCE_USE_ENABLED=1
SERVER_LABEL=
PHYSICAL_HOSTNAME=
STATE=ONLINE
ACTIVE_POOLS=ora.orcl_pool --此处显示节点2正运行在orcl_pool服务器池资源中。
STATE_DETAILS=
ACTIVE_CSS_ROLE=hub

接下来需要修改一下配置,让RAC数据库以我们熟知的方式启动在多个节点上。 –修改orcl_pool池中最少运行一台机器,最多运行2台机器,还记得我们前面说的关键程度吗?importance表示该池的关键程度,数字越大表示关键程度越高,越优先被考虑满足Min条件。

[oracle@dbserver2 ~]$ srvctl modify srvpool -serverpool orcl_pool -importance 5 -min 1 -max 2

–重新检查服务器池信息,可以看到已经修改成功,Min: 1, Max: 2

[oracle@dbserver2 ~]$ srvctl config srvpool
Server pool name: Free
Importance: 0, Min: 0, Max: -1
Category:
Candidate server names:
Server pool name: Generic
Importance: 0, Min: 0, Max: -1
Category:
Candidate server names:
Server pool name: orcl_pool
Importance: 5, Min: 1, Max: 2
Category: hub
Candidate server names:

–查看当前服务器池的状态,可以看到orcl_pool池中激活的服务器包括了节点1和节点2两台机器。

[grid@dbserver1 ~]$ crsctl status serverpool
NAME=Free
ACTIVE_SERVERS=

NAME=Generic
ACTIVE_SERVERS=

NAME=ora.orcl_pool
ACTIVE_SERVERS=dbserver1 dbserver2

在修改完毕以后,节点1中的数据库实例就会自动启动,我们可以通过crsctl命令查看服务器的状态,其中STATE_DETAILS字段显示了正在启动资源,在正常启动完毕以后该字段会显示为空。

[grid@dbserver2 ~]$ crsctl status server dbserver1 -f
NAME=dbserver1
MEMORY_SIZE=3954
CPU_COUNT=1
CPU_CLOCK_RATE=2
CPU_HYPERTHREADING=0
CPU_EQUIVALENCY=1000
DEPLOYMENT=other
CONFIGURED_CSS_ROLE=hub
RESOURCE_USE_ENABLED=1
SERVER_LABEL=
PHYSICAL_HOSTNAME=
STATE=ONLINE
ACTIVE_POOLS=ora.orcl_pool
STATE_DETAILS=STARTING RESOURCES
ACTIVE_CSS_ROLE=hub

现在就出现了一个比较尴尬的情况(对于我们以前管理RAC的常识来说),由于dbserver1中的实例是后启动的,因此实例名后缀为2,而dbserver2中的实例名后缀是1,实际上,在Policy-Managed管理的RAC环境中,无需关注到底哪个实例启动在哪台机器上,我们需要的就是通过SCAN IP,通过Service名去访问数据库就好,而不需要通过实例名访问数据库。但是这里为了测试一下功能,还是决定1归1,2归2,我有说过我是完美主义者吗?

--先将dbserver1上的数据库服务资源reolocate到dbserver2中,这样实例2就运行回到了dbserver2中。
[grid@dbserver1 ~]crsctl relocate resource ora.orcl12c.db -s dbserver1 -n dbserver2
--再将dbserver1中的实例启动,因为实例2已经启动在dbserver2中,因此即使此时该实例是后启动的,但是仍然还是会命名为实例1。
[oracle@dbserver1 ~] srvctl start instance -db orcl12c -node dbserver1

最后将这个RAC数据库再改回到只会启动一个实例的默认状态。

[oracle@dbserver2 ~] srvctl modify srvpool -serverpool orcl_pool -min 0 -max 1

以后,无论是启动在哪台机器上,数据库的实例名永远会是dbname_1(注意,这里有一个下划线,这是Policy-Managed数据库实例的命名规则)。而我们访问数据库,则不应该指定实例名。比如:

sqlplus sys/passwd@db-cluster-scan:1521/orcl12c as sysdba

因为现在你已经无需关心到底实例是启动在哪台机器上了,后面是一个资源池,是不是有些熟悉这样的表述,是的,没错,Cloud! 我们也贴上了Cloud这个红到发紫的词,这就是Oracle私有云解决方案的构成组件之一。

How to cleanup ADRCI Homes

ADRCI (ADR Command Interpreter) 是伴随Oracle 11g推出的新工具,由于各种log的位置纷繁复杂,因此在Oracle 11g中,Oracle将数据库、监听、客户端等的Log统一转到了diagnostic_dest初始化参数所指向的目录下的diag目录中,并且提供了ADRCI实用程序来进行高效查询及管理。在这之前我曾经写过两篇跟ADRCI相关的文章。
ADRCI Purge is NOT What You Think It Should Be:ADRCI的Purge命令用于清除日志文件中的内容,但是使用起来并非尽如人意。
Oracle11g for Windows ADRCI Issue:在Windows中使用ADRCI会产生的小问题,当然很久没有用过Windows,不知道这个问题是不是还依然存在。

ADRCI看上去是个很好的东西,但是除了show alert相对简单之外,其它的各种命令和查询条件的指定实际上比较繁琐,因此ADRCI在我周边的使用者寥寥可数,我算是坚持使用的为数不多者。因为使用者不多,所以对于ADRCI中一些极为简单的操作,了解者也比较少。

本文也是如此,如何删除在ADRCI中显示出来的多余的Homes?解决方法简单到令人发指。

问题重现,在命令中show homes显示出6个Home,这通常是由于安装过其它的数据库实例,然后删除的时候遗留下来的Log目录仍然存在。对于完美主义者来说这难以容忍。

[oracle@emnotech rdbms]$ adrci

ADRCI: Release 12.1.0.1.0 - Production on Mon Aug 18 01:34:31 2014

Copyright (c) 1982, 2013, Oracle and/or its affiliates.  All rights reserved.

ADR base = "/u01/app/oracle"
adrci> show home
ADR Homes:
diag/clients/user_oracle/host_266584670_80
diag/tnslsnr/emnotech/listener
diag/rdbms/orcl/orcl
diag/rdbms/slob/SLOB
diag/rdbms/slob/orcl
diag/rdbms/slob/slob

如上所示,ADR的基础目录在/u01/app/oracle,而各个Home都在其下的diag目录中,因此我们直接ls看一下目录结构。

[oracle@emnotech rdbms]pwd
/u01/app/oracle/diag/rdbms
[oracle@emnotech rdbms] ls -l
total 8
drwxr-x---. 3 oracle oinstall 4096 Jun  3 14:20 orcl
drwxr-xr-x. 5 oracle oinstall 4096 Aug  1 00:36 slob
[oracle@emnotech rdbms]$ ls -l slob
total 12
-rw-r-----.  1 oracle oinstall    0 Jun  5 03:16 i_1.mif
drwxr-xr-x. 16 oracle oinstall 4096 Jun  5 03:16 orcl
drwxr-xr-x. 16 oracle oinstall 4096 Jun  5 03:35 slob
drwxr-xr-x. 16 oracle oinstall 4096 Aug  1 00:36 SLOB

可以看到目录结构与ADRCI命令行中显示的完全一样,所以,解决方法就是直接rm掉不需要的目录。

[oracle@emnotech rdbms]rm -rf slob
[oracle@emnotech rdbms] ls -l
total 4
drwxr-x---. 3 oracle oinstall 4096 Jun  3 14:20 orcl

友情提示:一定要屡次确认才可以执行rm -rf这样危险的命令,每次对这个命令敲回车我都心惊胆战、心存敬畏。

[oracle@emnotech rdbms]$ adrci

ADRCI: Release 12.1.0.1.0 - Production on Mon Aug 18 01:35:23 2014

Copyright (c) 1982, 2013, Oracle and/or its affiliates.  All rights reserved.

ADR base = "/u01/app/oracle"
adrci> show home
ADR Homes:
diag/clients/user_oracle/host_266584670_80
diag/tnslsnr/emnotech/listener
diag/rdbms/orcl/orcl
adrci>

再次进入ADRCI中查看Homes,世界清静了。