1、一般来说,对于一个新的企业应用,你最有可能推荐哪种类型的数据库:面向对象数据库还是关系型数据库?请说明理由。
- 推荐关系型数据库。理由如下:
- 关系模型在未来多年仍将是主流;
- 存在如Java领域的Hibernate等标准技术来处理对象到关系表的映射;
- 大多数应用开发框架支持使用JDBC等技术直接向关系型数据库发送SQL,有效缓解了对象 - 关系的差距。
2、从概念上讲,Oracle实例和Oracle数据库之间的主要区别是什么?
从概念上讲,Oracle数据库和Oracle实例是两个不同但互补的实体。Oracle数据库从数据角度看是一个 逻辑实体 ,其组成部分包括:
- 模式
- 表
- 索引
- 视图
- 触发器
- 存储过程
- 字典
- 用户
而Oracle实例从系统资源角度看更像是一个 物理实体 ,其组成部分包括:
- 执行各种任务的进程
- 保存各种类型数据的内存区域
- 驻留在物理磁盘上的数据文件
一个实例只能操作一个数据库,而在集群环境中,一个数据库可以由多个实例操作以实现高可用性。
3、解释为什么有时在命令提示符级别设置 ORACLE_HOME 环境变量是不够的。在全局级别设置 ORACLE_HOME 环境变量相对于在会话级别设置有什么优势?
有时在命令提示符级别设置 ORACLE_HOME 环境变量不够,是因为某些应用安装程序只在全局系统级别检查该变量的定义。在全局级别设置 ORACLE_HOME 环境变量,能确保所有需要该变量的应用程序都能正确读取,避免出现如客户端库权限不足或版本错误等问题,保证应用安装和运行的顺利进行。
4、使用tnsping命令检查与数据库的连接性。然后使用sqlplus测试与数据库的连接,确保你可以连接到数据库。
首先,定位 tnsnames.ora 文件,确保其中存在类似如下的条目:
<yourConnectString> =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS =
(PROTOCOL = TCP)
(HOST = <yourHost>)
(PORT = 1521)
)
)
(CONNECT_DATA =
(SID = <yourSID>)
(SERVER = DEDICATED)
)
)
并将三个特定于环境的条目替换为你自己的信息。
接着,在 MS-DOS 提示符下,执行命令:
tnsping <yourConnectString>
若得到以 “OK ( )” 结尾的回复,则表明可使用 sqlplus.exe 连接 Oracle 服务器;若未得到该回复,则需先解决问题。
之后,使用命令:
sqlplus <username>/<password>@<yourConnectString>
测试 sqlplus 与数据库的连接,确保能成功连接。
5、尝试使用命令来锁定和解锁Oracle数据库中的示例账户“Scott”。
要解锁账户“Scott”并分配新密码,在Oracle服务器上执行以下命令:
-
打开MS-DOS窗口,输入:
/bin/sqlplus "/as sysdba" -
输入:
alter user scott unlock identified by <新密码>; -
输入:
commit;
要检查账户“Scott”的状态,执行:
select account_status from dba_users where username = 'SCOTT';
若要锁定账户“Scott”,可执行:
alter user scott account lock;
然后执行:
commit;
注 :在Oracle中,用户账户名内部以大写存储,所以查询时使用大写。
6、如果你的 EM DBConsole 配置为使用 HTTPS 协议,如何将其更改为使用普通 HTTP 协议?
可以通过执行命令 %ORACLE_HOME%/bin/emctl unsecure dbconsole 来将其更改为使用普通 HTTP 协议。
7、解释TNS描述符、连接标识符、服务名和SID的概念。从概念上讲,连接标识符、服务名和SID之间的主要区别是什么?
-
TNS描述符 :如示例
tnsnames.ora文件中的配置,包含地址、协议、主机、端口等信息,用于描述如何连接到数据库。 -
连接标识符 :如示例中的
ORA11GR1,是tnsnames.ora文件中的一个条目,可解析为连接描述符,是从本地角度的数据库标识符,可随意更改,只要在本地tnsnames.ora文件中唯一。 - <

最低0.47元/天 解锁文章
1087

被折叠的 条评论
为什么被折叠?



