oracle系统

使用 GDB 调试多进程程序

蓝咒 提交于 2019-12-25 06:45:14
技术主题 软件下载 社区 技术讲座 技术主题 AIX and UNIX Cloud computing IBM i Information management Java technology Linux Lotus Open source Rational SOA and web services Web development WebSphere XML 文档库 产品 A - Z 软件下载 Information management Lotus Rational Tivoli WebSphere 社区 我的首页 概要信息 群组 博客 书签 Wiki 文件 活动 技术讲座 技术讲座 多媒体课堂 网络广播(英文) 查找活动(技术讲座,网络广播,会议等)(英文) developerWorks 中国 Linux 文档库 使用 GDB 调试多进程程序 田 强 ( mailto:tianq@cn.ibm.com?subject=使用 GDB 调试多进程程序 ), 软件工程师, IBM中国软件开发中心 田强,中国软件开发中心 Tivoli 部门软件工程师,负责 IBM 产品TMF(Tivoli Management Framework)的维护和客户支持工作,热爱 Linux。 简介: GDB 是 linux 系统上常用的调试工具,本文介绍了使用 GDB 调试多进程程序的几种方法

使用 GDB 调试多进程程序

半腔热情 提交于 2019-12-25 06:44:59
GDB 是 linux 系统上常用的 c/c++ 调试工具,功能十分强大。对于较为复杂的系统,比如多进程系统,如何使用 GDB 调试呢?考虑下面这个三进程系统: 进程 Proc2 是 Proc1 的子进程,Proc3 又是 Proc2 的子进程。如何使用 GDB 调试 proc2 或者 proc3 呢? 实际上,GDB 没有对多进程程序调试提供直接支持。例如,使用GDB调试某个进程,如果该进程fork了子进程,GDB会继续调试该进程,子进程会不受干扰地运行下去。如果你事先在子进程代码里设定了断点,子进程会收到SIGTRAP信号并终止。那么该如何调试子进程呢?其实我们可以利用GDB的特点或者其他一些辅助手段来达到目的。此外,GDB 也在较新内核上加入一些多进程调试支持。 接下来我们详细介绍几种方法,分别是 follow-fork-mode 方法,attach 子进程方法和 GDB wrapper 方法。 follow-fork-mode 在2.5.60版Linux内核及以后,GDB对使用fork/vfork创建子进程的程序提供了follow-fork-mode选项来支持多进程调试。 follow-fork-mode的用法为: set follow-fork-mode [parent|child] parent: fork之后继续调试父进程,子进程不受影响。 child:

使用 GDB 调试多进程程序

余生颓废 提交于 2019-12-25 06:44:42
使用 GDB 调试多进程程序 来源 https://www.ibm.com/developerworks/cn/linux/l-cn-gdbmp/index.html GDB 是 linux 系统上常用的 c/c++ 调试工具,功能十分强大。对于较为复杂的系统,比如多进程系统,如何使用 GDB 调试呢?考虑下面这个三进程系统: 进程 Proc2 是 Proc1 的子进程,Proc3 又是 Proc2 的子进程。如何使用 GDB 调试 proc2 或者 proc3 呢? 实际上,GDB 没有对多进程程序调试提供直接支持。例如,使用GDB调试某个进程,如果该进程fork了子进程,GDB会继续调试该进程,子进程会不受干扰地运行下去。如果你事先在子进程代码里设定了断点,子进程会收到SIGTRAP信号并终止。那么该如何调试子进程呢?其实我们可以利用GDB的特点或者其他一些辅助手段来达到目的。此外,GDB 也在较新内核上加入一些多进程调试支持。 接下来我们详细介绍几种方法,分别是 follow-fork-mode 方法,attach 子进程方法和 GDB wrapper 方法。 follow-fork-mode 在2.5.60版Linux内核及以后,GDB对使用fork/vfork创建子进程的程序提供了follow-fork-mode选项来支持多进程调试。 follow-fork

免安装Oracle客户端使用PL/SQL连接Oracle

旧时模样 提交于 2019-12-25 04:47:47
资料一*************************************************************************** 1.下载Oracle Client Package . 从 http://www.oracle.com/technology/software/tech/oci/instantclient/htdocs/winsoft.html 下载 Instant Client Package – Basic 包 ( 标注 :All files required to run OCI, OCCI, and JDBC-OCI applications) 这里下载的是 Version 11.1.0.7 2.本地保存Oracle Client Package: 创建文件夹 , 比如 oracle_client, 将下载的文件加压缩到此文件夹里 .( 笔者目录 : D:\oracle_client\instantclient_10_2) 3. 在当前目录下 ,新建立两个文件,sqlnet.ora和tnsnames.ora然后再 手动配置 sqlnet.ora 和 tnsnames.ora 比如这里是 : sqlnet.ora 文件内容 : SQLNET.AUTHENTICATION_SERVICES= (NTS) NAMES.DIRECTORY

Oracle数据库链接SQLServer数据库

≡放荡痞女 提交于 2019-12-25 03:16:44
我的应用场景: 项目系统使用oracle数据库,与客户的第三方系统供应商实现资源共享,对方为sql server数据库; 我的测试开发环境为64bitwin7PC机,本机上装有64位Oracle11g和32位Oracle11g; 本文以32位Oracle为例,通过配置ODBC数据源连接虚拟机上的Sql Server; 第一步、创建ODBC数据源 这一步要考虑数据源是32位还是64位的问题,其实就是选择不同的exe打开上面的界面, win764位操作系统的64-bit ODBC 默认的位置: C:\Windows\System32\odbcad32.exe win764位操作系统的32-bit ODBC 默认的位置: C:\Windows\SysWOW64\odbcad32.exe 添加数据源: 测试通过代表数据源配置成功 第二步、检查DG4ODBC驱动是否已经安装 方法如下: 在Oracle服务器上,cmd窗口中执行命令(dg4odbc或hsodbc) 上图代表安装了DG4ODBC驱动(如果没有安装,需自行下载安装,此处不介绍具体操作) 第三步、配置hsodbc 此目录下默认存在initdg4odbc.ora,复制这个文件,粘贴到上图目录中,并将后复制的文件改名为initodbc_test.ora,用记事本打开就该配置并保存如下图 注:每个使用DG4ODBC的实例,都必须单独一个

三大数据库概念特

随声附和 提交于 2019-12-25 01:09:06
** 三大数据库概念特点 ** 1.MySQL数据库 1.1mysql的概念 MySQL是一个关系型数据库管理系统,使用结构化查询语言(SQL)进行数据库管理,sql是最常用的数据库管理语言. 关系型数据库:是指采用了关系模型来组织的数据库.简单说,关系模型指的就是二维表格模型,儿一个关系型数据库就是由二维表及其之间的联系所组成的一个数据库组织. 非关系型数据库:非关系型数据库严格说不是一种数据库,是一种数据结构化储存方法的集合. 1.2mysql的特点 MySQL是一个小型关系型数据库管理系统、被广泛地应用在中小型网站. 特点: 1.体积小 2.速度快 3.使用成本低 4.源码开放 2.Oracle数据库 2.1Oracle的概念 亿级的  跨平台  安全性高 Oracle体系结构 (1)数据库的组成,工作过程与原理,以及数据在数据库中的组织与管理机制 (2)oracle服务器结构:由Oracle数据库和Oracle实例组成 (3)oracle数据库结构:包括逻辑结构和物理结构 (4)oracle数据库操作系统文件,即实际物理储存区 *数据文件  以dbf结尾  信息的物理地址 *控制文件  以ctl结尾 *日志文件  以log结尾 (5)oracle系统表 *详细描述了表数量,表名,表的属主,表的列信息等,通常只能查看 2.2Oracle的特点 优点: 开放性

查询Oracle正在执行的sql语句及执行该语句的用户

不问归期 提交于 2019-12-25 00:57:03
查询Oracle正在执行的sql语句及执行该语句的用户 SELECT B.SID ORACLEID, B.USERNAME 登录ORACLE用户名, B.SERIAL#, SPID 操作系统ID, PADDR, SQL_TEXT 正在执行的SQL, B.MACHINE 计算机名 FROM V$PROCESS A, V$SESSION B, V$SQLAREA C WHERE A.ADDR = B.PADDR AND B.SQL_HASH_VALUE = C.HASH_VALUE; --查看正在执行sql的发起者的发放程序 SELECT OSUSER 电脑登录身份, PROGRAM 发起请求的程序, USERNAME 登录系统的用户名, SCHEMANAME, B.CPU_TIME 花费CPU的时间, STATUS, B.SQL_TEXT 执行的SQL FROM V$SESSION A LEFT JOIN V$SQL B ON A.SQL_ADDRESS = B.ADDRESS AND A.SQL_HASH_VALUE = B.HASH_VALUE ORDER BY B.CPU_TIME DESC; --锁表查询SQL SELECT OBJECT_NAME, MACHINE, S.SID, S.SERIAL# FROM GV$LOCKED_OBJECT L, DBA_OBJECTS

Oracle中查看所有表和字段

对着背影说爱祢 提交于 2019-12-24 21:06:31
获取表字段: select * from user_tab_columns where Table_Name='用户表' order by column_name 获取表注释: select * from user_tab_comments where Table_Name='用户表' order by Table_Name 获取字段注释: select * from user_col_comments where Table_Name='用户表' order by column_name /* 获取表:*/ select table_name from user_tables; //当前用户的表 select table_name from all_tables; //所有用户的表 select table_name from dba_tables; //包括系统表 select table_name from dba_tables where owner='zfxfzb' /* user_tables: table_name,tablespace_name,last_analyzed等 dba_tables: ower,table_name,tablespace_name,last_analyzed等 all_tables: ower,table_name,tablespace

Oracle绑定变量分级-实测

。_饼干妹妹 提交于 2019-12-24 20:05:52
在oracle 中,对于一个提交的sql语句,存在两种可选的解析过程, 一种叫做 硬解析 ,一种叫做 软解析 . 一个硬解析需要经解析,制定执行路径,优化访问计划等许多的步骤.硬解释不仅仅耗费大量的cpu,更重要的是会占据重要的们闩(latch)资源,严重的影响系统的规模的扩大(即限制了系统的并发行), 而且引起的问题不能通过增加内存条和cpu的数量来解决。这是因为门闩是为了顺序访问以及修改一些内存区域而设置的,这些内存区域是不能被同时修改。当一个sql语句提交后,oracle会首先检查一下共享缓冲池(shared pool)里有没有与之完全相同的语句,如果有的话只须执行软分析即可,否则就得进行硬分析。 而唯一使得oracle 能够重复利用执行计划的方法就是采用绑定变量。绑定变量的实质就是用于替代sql语句中的常量的替代变量。绑定变量能够使得每次提交的sql语句都完全一样。 普通sql语句: update ipsdba_test set sn1=‘SN11’,sn2=‘SN12’,sn3=‘SN13’ where sn_key=1; update ipsdba_test set sn1=‘SN21’,sn2=‘SN22’,sn3=‘SN23’ where sn_key=1; update ipsdba_test set sn1=‘SN31’,sn2=‘SN32’,sn3=‘SN33

Oracle12c Linux x86-64安装体验

烈酒焚心 提交于 2019-12-24 20:01:29
Oracle12c Linux x86-64安装体验 下载Oracle Database 12cRelease 1安装介质 官方的下载地址: 1: http://www.oracle.com/technetwork/database/enterprise-edition/downloads/index.html 2: https://edelivery.oracle.com/EPD/Download/get_form?egroup_aru_number=16496132 URL地址2需要先注册,然后才能登陆下载,注册登陆界面https://edelivery.oracle.com 地址1下载的文件为: linuxamd64_12c_database_1of2.zip linuxamd64_12c_database_2of2.zip 地址2下载的文件为: V38500-01_1of2.zip V38500-01_2of2.zip Oracle 12c 对系统内存的最低要求为1G,推荐2G或更大的内存, 开始安装oracle 1.添加一块新硬盘并格式化 [root@localhost ~]# cd /dev [root@localhost dev]# ls [root@localhost dev]# fdisk /dev/sdb [root@localhost dev]# mkfs