一、 启动和停止数据库
1. 正常生产环境下不建议随意启动和停止数据库
2. 可以使用集群启动和停止数据库。cmruncl 或是cmhaltcl -f
3. 也可以手工方式启/停数据库
用oracle用户登录,执行
Sqlplus /nolog
在SQL>提示符下输入conn / as sysdba
然后执行Startup 或是 shutdown immediate 启动或停止数据库
4.在linux下:
启动数据库
sqlplus /nolog
connect /as sysdba
startup
shutdown 关闭数据库
启动监听
lsnrctl start
lsnrctl stop 关闭监听
二、 连接数据库
1. 在服务器端连接
用oracle用户登录
Sqlplus /nolog
Conn / as sysdba 即可登录数据库,也可以采用跟客户端连接同样的方法连接
2. 在客户端连接
Sqlplus “用户名/密码@服务名”
服务名是指客户端TNSNAMES.ORA文件中指定的服务名,下文有说明
三、 TNS文件范例和说明
这里每个例子第一行等号前面的诸如zhxt1、zhxt2、zhxt、lucky、fish就是服务名
例子一:客户端分别连接两个不同节点的客户端配置
zhxt1 =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = lzgadb1)(PORT = 1521))
(CONNECT_DATA =
(SERVICE_NAME = zhxt)
(INSTANCE_NAME = zhxt1)
)
)
zhxt2 =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = lzgadb2)(PORT = 1521))
(CONNECT_DATA =
(SERVICE_NAME = zhxt)
(INSTANCE_NAME = zhxt2)
)
)
例子二:客户端连接全局数据库,不一定连接至哪个数据库,实现负载均衡的客户端配置方法
zhxt =
(DESCRIPTION =
(load_balance=yes)
(failover=on)
(ADDRESS = (PROTOCOL = TCP)(HOST = lzgadb1)(PORT = 1521))
(ADDRESS = (PROTOCOL = TCP)(HOST = lzgadb2)(PORT = 1521))
(CONNECT_DATA =
(SERVICE_NAME = zhxt)
(failover_mode=
(type=select)
(method=basic)
)
)
)
例子三:客户端连接全局数据库,不一定连接至哪个数据库,实现负载均衡的客户端配置另一个方法
lucky =
(description =
(address=(protocol=tcp)(host=lzgadb1)(port=1521))
(connect_data=(sid=zhxt1)(server=dedicated)
(failover_mode=(type=select)(method=preconnect)(backup=fish))
)
)
fish =
(description =
(address=(protocol=tcp)(host=lzgadb2)(port=1521))
(connect_data=(sid=zhxt2)(server=dedicated)
(failover_mode=(type=select)(method=preconnect)(backup=lucky))
)
)
四、 修改sys或system用户密码
用oracle用户登录
Sqlplus /nolog
Conn / as sysdba
Alter user sys identified by 新密码; ---修改sys密码
Alter user system identified by 新密码; ---修改system密码
五、 创建新的数据文件(该操作在应用有需求的时候才执行)
1. 由于RAC环境下的数据库,数据文件必然要放置在共享磁盘阵列上,以实现共享访问,所以必须每一个数据文件都要有相应的裸设备与之对应。
2. 创建裸设备
创建裸设备请联系系统工程师
每一个裸设备尽量不要大于2GB,万一需要大于2GB,与尽量不要大于4GB
3. 修改裸设备的权限和属主
两台机器都需要执行。用root用户执行
Chown oracle:dba /dev/vg01/rtest2
4. 创建数据库数据文件
可以使用oracle客户端Enterprise Manager管理软件连接数据库创建数据文件
注意事项:
a. 严格按照前面2/3/流程创建裸设备以及赋予相应权限
b. 数据文件的名称和目录要与裸设备一致(例如/dev/rtest2)
c. 数据文件大小至少比裸设备大小小1MB
d. 不要使用自动扩展
e. 使用本地管理方式(默认值)
六、 导入数据时应注意的问题
1. 导入数据与目标数据库字符集尽量一致
2. 对照导出数据库的配置,要在目标数据库端首先创建出相应的表空间以及用户,并且指定用户默认表空间和临时表空间,并且赋予用户与原数据库同样的权限/角色或是限额等等。建议使用OEM管理软件对照操作
3. 导入/导出大表建议使用管道文件或是联系oracle支持
4. 导入大量数据时建议关闭归档模式,或是随时注意归档目录的剩余空间,随时清空或移动到其他地方。如果归档目录占满,则数据库会非法关闭。
七、 系统日常运行维护
管理员除了日常自行操作以外,主要关心
1. 数据库运行日志
数据库日常运行状态都会记录在每个节点的/oracle/admin/zhxt/bdump目录下。
该目录中只有一个*.log的文件和一些*.trc的文件
*.log文件是用户关心的日志文件,可以使用vi或其他文本查看器查看。该文件按照时间点排序记录数据库运行中的信息,包括启动/停止的信息,一些参数配置信息,对数据库结构造成改变的信息(比如添加新的数据文件),以及数据库运行的一些可能的错误(以大写的ORA-开头)和错误的简单原因和信息,等等
2. 定期将运行日志中已经无用的过时的信息删除,以免该日志文件过大
3. 出现问题时首先查看系统与集群是否正常工作,盘阵是否正常工作。然后查看数据库状态,查看日志文件中记录的信息,判断问题的情况。如果不能解决,联系oracle
1. 正常生产环境下不建议随意启动和停止数据库
2. 可以使用集群启动和停止数据库。cmruncl 或是cmhaltcl -f
3. 也可以手工方式启/停数据库
用oracle用户登录,执行
Sqlplus /nolog
在SQL>提示符下输入conn / as sysdba
然后执行Startup 或是 shutdown immediate 启动或停止数据库
4.在linux下:
启动数据库
sqlplus /nolog
connect /as sysdba
startup
shutdown 关闭数据库
启动监听
lsnrctl start
lsnrctl stop 关闭监听
二、 连接数据库
1. 在服务器端连接
用oracle用户登录
Sqlplus /nolog
Conn / as sysdba 即可登录数据库,也可以采用跟客户端连接同样的方法连接
2. 在客户端连接
Sqlplus “用户名/密码@服务名”
服务名是指客户端TNSNAMES.ORA文件中指定的服务名,下文有说明
三、 TNS文件范例和说明
这里每个例子第一行等号前面的诸如zhxt1、zhxt2、zhxt、lucky、fish就是服务名
例子一:客户端分别连接两个不同节点的客户端配置
zhxt1 =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = lzgadb1)(PORT = 1521))
(CONNECT_DATA =
(SERVICE_NAME = zhxt)
(INSTANCE_NAME = zhxt1)
)
)
zhxt2 =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = lzgadb2)(PORT = 1521))
(CONNECT_DATA =
(SERVICE_NAME = zhxt)
(INSTANCE_NAME = zhxt2)
)
)
例子二:客户端连接全局数据库,不一定连接至哪个数据库,实现负载均衡的客户端配置方法
zhxt =
(DESCRIPTION =
(load_balance=yes)
(failover=on)
(ADDRESS = (PROTOCOL = TCP)(HOST = lzgadb1)(PORT = 1521))
(ADDRESS = (PROTOCOL = TCP)(HOST = lzgadb2)(PORT = 1521))
(CONNECT_DATA =
(SERVICE_NAME = zhxt)
(failover_mode=
(type=select)
(method=basic)
)
)
)
例子三:客户端连接全局数据库,不一定连接至哪个数据库,实现负载均衡的客户端配置另一个方法
lucky =
(description =
(address=(protocol=tcp)(host=lzgadb1)(port=1521))
(connect_data=(sid=zhxt1)(server=dedicated)
(failover_mode=(type=select)(method=preconnect)(backup=fish))
)
)
fish =
(description =
(address=(protocol=tcp)(host=lzgadb2)(port=1521))
(connect_data=(sid=zhxt2)(server=dedicated)
(failover_mode=(type=select)(method=preconnect)(backup=lucky))
)
)
四、 修改sys或system用户密码
用oracle用户登录
Sqlplus /nolog
Conn / as sysdba
Alter user sys identified by 新密码; ---修改sys密码
Alter user system identified by 新密码; ---修改system密码
五、 创建新的数据文件(该操作在应用有需求的时候才执行)
1. 由于RAC环境下的数据库,数据文件必然要放置在共享磁盘阵列上,以实现共享访问,所以必须每一个数据文件都要有相应的裸设备与之对应。
2. 创建裸设备
创建裸设备请联系系统工程师
每一个裸设备尽量不要大于2GB,万一需要大于2GB,与尽量不要大于4GB
3. 修改裸设备的权限和属主
两台机器都需要执行。用root用户执行
Chown oracle:dba /dev/vg01/rtest2
4. 创建数据库数据文件
可以使用oracle客户端Enterprise Manager管理软件连接数据库创建数据文件
注意事项:
a. 严格按照前面2/3/流程创建裸设备以及赋予相应权限
b. 数据文件的名称和目录要与裸设备一致(例如/dev/rtest2)
c. 数据文件大小至少比裸设备大小小1MB
d. 不要使用自动扩展
e. 使用本地管理方式(默认值)
六、 导入数据时应注意的问题
1. 导入数据与目标数据库字符集尽量一致
2. 对照导出数据库的配置,要在目标数据库端首先创建出相应的表空间以及用户,并且指定用户默认表空间和临时表空间,并且赋予用户与原数据库同样的权限/角色或是限额等等。建议使用OEM管理软件对照操作
3. 导入/导出大表建议使用管道文件或是联系oracle支持
4. 导入大量数据时建议关闭归档模式,或是随时注意归档目录的剩余空间,随时清空或移动到其他地方。如果归档目录占满,则数据库会非法关闭。
七、 系统日常运行维护
管理员除了日常自行操作以外,主要关心
1. 数据库运行日志
数据库日常运行状态都会记录在每个节点的/oracle/admin/zhxt/bdump目录下。
该目录中只有一个*.log的文件和一些*.trc的文件
*.log文件是用户关心的日志文件,可以使用vi或其他文本查看器查看。该文件按照时间点排序记录数据库运行中的信息,包括启动/停止的信息,一些参数配置信息,对数据库结构造成改变的信息(比如添加新的数据文件),以及数据库运行的一些可能的错误(以大写的ORA-开头)和错误的简单原因和信息,等等
2. 定期将运行日志中已经无用的过时的信息删除,以免该日志文件过大
3. 出现问题时首先查看系统与集群是否正常工作,盘阵是否正常工作。然后查看数据库状态,查看日志文件中记录的信息,判断问题的情况。如果不能解决,联系oracle