在你的虚拟机安装oracle的前提下,其中的全部操作如下:
1 首先开启虚拟机
2 打开oracle的相关服务:(Linux下启动Oracle监听)
1)登录(这儿使用oracle),开启 oracle的监听:lsnrctl start
2)进入sql 模式:sqlplus /nolog
3)数据库登录:SQL>:conn system/manager as sysdba;
4)打开数据库:SQL>:startup (可执行SQL语句)
5)若你未创建用户,可以创建一个用户,后面的proc程序中会使用到:
创建用户:create User username identified by password default tablespace users;
赋权限: grant connect,resource to username;
//如果想要撤销权限可以使用:revoke resource from username;
6)退出sql模式:quit / exit
3 编写proc程序,以 .pc 为后缀名:
vi test.pc
................
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
EXEC SQL include sqlca;
int main()
{
EXEC SQL BEGIN DECLARE SECTION;
char sLogin[20];
EXEC SQL END DECLARE SECTION;
strcpy(sLogin,"name/password");
EXEC SQL CONNECT :sLogin;
if(sqlca.sqlcode)
{
fprintf(stderr,"%d 连接数据库出错[%d][%s]",__LINE__,sqlca.sqlcode,sqlca.sqlerrm.sqlerrmc);
exit(0);
}
。。。。。。。。。。。。。。。。
return 0;
}
................
4 编译成.c文件:
proc test.pc
5 编译
gcc -L $ORACLE_HOME/lib -l clntsh test.c
6 运行
./a.out
7 关闭数据库
1) lsnrctl stop
2) sqlplus /nolog
3) shutdown :
(1) Normal:需要等待所有的用户断开连接
(2) Immediate:等待用户完成当前的语句
(3)Transactional:等待用户完成当前的事务
(4) Abort:不做任何等待,直接关闭数据库
8 关闭linux系统
halt :关闭
init 0: 关闭
init b :重启