1 首先ORACLE_SID问题
[oracle@paopao ~]$ echo $ORACLE_SID
orcl
因为要创建的数据库名为orcl1,所以更改ORACLE_SID如下:
[oracle@paopao ~]$ export ORACLE_SID=orcl1
2 准备初始化参数文件
##########################################################################
####
# Copyright (c) 1991, 2001, 2002 by Oracle Corporation
##########################################################################
####
###########################################
# Cache and I/O
###########################################
db_block_size=8192
db_file_multiblock_read_count=16
###########################################
# Cursors and Library Cache
###########################################
open_cursors=300
###########################################
# Database Identification
###########################################
db_domain=""
db_name=orcl1
###########################################
# Diagnostics and Statistics
############################# ......
linux中一共有32种信号,在/usr/include/bits/signum.h 头文件中可以看到
#define SIGHUP 1 /* Hangup (POSIX). */
#define SIGINT 2 /* Interrupt (ANSI). */
#define SIGQUIT 3 /* Quit (POSIX). */
#define SIGILL 4 /* Illegal instruction (ANSI). */
#define SIGTRAP 5 /* Trace trap (POSIX). */
#define SIGABRT 6 /* Abort (ANSI). */
#define SIGIOT 6 /* IOT trap (4.2 BSD). */
#define SIGBUS 7  ......
fg、bg、jobs、&、ctrl + z都是跟系统任务有关的,虽然现在基本上不怎么需要用到这些命令,但学会了也是很实用的
一。& 最经常被用到
这个用在一个命令的最后,可以把这个命令放到后台执行
二。ctrl + z
可以将一个正在前台执行的命令放到后台,并且暂停
三。jobs
查看当前有多少在后台运行的命令
四。fg
将后台中的命令调至前台继续运行
如果后台中有多个命令,可以用 fg %jobnumber将选中的命令调出,%jobnumber是通过jobs命令查到的后台正在执行的命令的序号(不是pid)
五。bg
将一个在后台暂停的命令,变成继续执行
如果后台中有多个命令,可以用bg %jobnumber将选中的命令调出,%jobnumber是通过jobs命令查到的后台正在执行的命令的序号(不是pid)
当前正在运行的程序用 CTRL+z来挂入后台,用fg 来唤醒.可以进行多进程切换.
Unix/Linux下一般比如想让某个程序在后台运行,很多都是使用 & 在程序结尾来让程序自动运行。比如我们要运行mysql在后台:
/usr/loc ......
内核驱动分类
驱动实现功能:
读
写
打开
设置
最终目的操作硬件设备:数据传输和数据控制
硬件参考手册,内核提供的功能:操作时序,总线如何操作,内核API
1.字符设备(char)
2.块设备(block)
3.网络设备(net)
内核模块操作命令
make
加载:sudo modprobe ./ModuleHellowWorld
sudo insmod ./ModuleHellowWorld.ko
查看内核模块:lsmod
dmseg
卸载内核模块:rmmod
字符设备驱动开发
......
Linux下安装完后Oracle客户端后调用OCI,编译没有问题,运行时发现
cannot open shared object file libclntsh.so.10.1: No such file or directory
经过查找发现是oracle的路径没有设置
输入:
locate libclntsh.so.10.1
获取对于路径
/app/oracle/oracle/product/10.2.0/db_1/lib/libclntsh.so.10.1
编辑/etc/ld.so.conf
vim /etc/ld.so.conf
在最后一行输入获取的路径
/oracle/product/10.2.0/db_1/lib/
执行
ldconfig
......
备份控制文件包括三种方法:
(1)通过操作系统命令在数据库关闭时对控制文件进行COPY;
(2)利用ALTER DATABASE BACKUP CONTROLFILE TO命令将控制文件备份到二进制文件;
SQL> alter database backup controlfile to 'E:\oracle\product\10.2.0\orcl\controlfile01.bak';
数据库已更改。
(3)利用ALTER DATABASE BACKUP CONTROLFILE TO TRACE命令将重建控制文件备份的脚本备份到后台trace文件中。
SQL> alter database backup controlfile to trace;
数据库已更改。
Oracle推荐使用第二种方式来备份控制文件。第一种方式备份的控制文件,一般用于全库一致性恢复。而第三种方式备份控制文件会丢失归档日志历史等许多信息。在重建控制文件时,只读表空间和脱机的数据文件的处理相对比较复杂。
恢复利用alter database backup controlfile to trace;备份的控制文件
1 关闭数据库,重命名控制文件,模拟控制文件丢失
2 打开数据库,连接如下:
SQL*Plus: Release 10.2.0.1.0 - Production on 星期六 5月 15 19:23:57 2010
Copyright (c) 1982, 2005, Oracle. All rights reserved.
SQL> conn sys/admin as sysdba
已连接。
SQL> conn system/manag ......