您的位置:首页 > 数据库 > Oracle

oracle中普通用户如何查看自己登录的数据库名称?这个用户与scott权限相同,无法切换到sys下面!没有权限查看v$database和v$instance

2016-06-14 10:38 901 查看
发表于: 2013-03-17 12:01:19

oracledatabaseusersql

oracle服务软件里面装了三个数据库,三个数据库服务都启动了,在登录数据库的时候没有指定数据库名称,所以现在登录到哪个数据库里面自己都不知道。

这三个数据库里面都有test_user用户,且密码都一样,在各自的数据库中也都拥有相同的权限,是以test_user用户登录的。

那么我该用什么命令查看当前是登录了哪个数据库(三个数据库服务都启动着呢)呢?

我知道切换到sys后用下面的命令可以查看当前数据库的名称

sql>show parameter db_name;



sql>select name from v$database;



sql>select instance_name form v$instance;

但是我不知道sys的密码,数据库是以密码方式验证登录的,不是已系统验证方式登录的!那么我该怎么查看登录的数据库名称呢?

上面的两个数据字典表,v$database和v$instance在test_user用户下是没有权限查看的的!(是数据字典表还是视图呢,刚刚接触oracle里面的概念还不清楚呢)

(附:test_user的权限和scott相同)

说的更直接点,我远程登录别人的oracle,但是他的机器上装了多个数据库,都有我这个用户,我在登录的时候没有指定数据库名称,我该怎么查看我登录的是那个数据库呢?

希望知道的朋友指点,万分感谢!

更多0分享到:

相关知识库: MySQL

<iframe id="iframeu1636200_0" src="http://pos.baidu.com/nclm?rdid=1636200&dc=2&di=u1636200&dri=0&dis=0&dai=2&ps=1439x385&dcb=BAIDU_SSP_define&dtm=BAIDU_DUP_SETJSONADSLOT&dvi=0.0&dci=-1&dpt=none&tsr=0&tpr=1465805203295&ti=oracle%E4%B8%AD%E6%99%AE%E9%80%9A%E7%94%A8%E6%88%B7%E5%A6%82%E4%BD%95%E6%9F%A5%E7%9C%8B%E8%87%AA%E5%B7%B1%E7%99%BB%E5%BD%95%E7%9A%84%E6%95%B0%E6%8D%AE%E5%BA%93%E5%90%8D%E7%A7%B0%3F%E8%BF%99%E4%B8%AA%E7%94%A8%E6%88%B7%E4%B8%8Escott%E6%9D%83%E9%99%90%E7%9B%B8%E5%90%8C%EF%BC%8C%E6%97%A0%E6%B3%95%E5%88%87%E6%8D%A2%E5%88%B0sys%E4%B8%8B%E9%9D%A2!%E6%B2%A1%E6%9C%89%E6%9D%83%E9%99%90%E6%9F%A5%E7%9C%8Bv%24&ari=1&dbv=2&drs=3&pcs=1349x643&pss=1349x5699&cfv=0&cpl=4&chi=1&cce=true&cec=UTF-8&tlm=1465805203&ltu=http%3A%2F%2Fbbs.csdn.net%2Ftopics%2F390394925%2F&ltr=https%3A%2F%2Fwww.baidu.com%2Flink%3Furl%3DUilOoBQ1IbzN0rG1YwOeufV3zo8CdUbR8AaOu8k2qRSHXnCbkptC2aqzwQFMqvUC%26wd%3D%26eqid%3Df0b08f810008a5aa00000003575e6a69&ecd=1&psr=1366x768&par=1366x728&pis=-1x-1&ccd=24&cja=true&cmi=6&col=zh-CN&cdo=-1&tcn=1465805203&qn=c394006cde36cf83&tt=1465805203272.29.265.268" width="200" height="22" align="center,center" vspace="0" hspace="0" marginwidth="0" marginheight="0" scrolling="no" frameborder="0" allowtransparency="true" style="box-sizing: content-box; border-width: 0px; border-style: initial; vertical-align: bottom; margin: 0px;"></iframe>

 

<iframe id="iframeu1636201_0" src="http://pos.baidu.com/nclm?rdid=1636201&dc=2&di=u1636201&dri=0&dis=0&dai=3&ps=1439x639&dcb=BAIDU_SSP_define&dtm=BAIDU_DUP_SETJSONADSLOT&dvi=0.0&dci=-1&dpt=none&tsr=0&tpr=1465805203295&ti=oracle%E4%B8%AD%E6%99%AE%E9%80%9A%E7%94%A8%E6%88%B7%E5%A6%82%E4%BD%95%E6%9F%A5%E7%9C%8B%E8%87%AA%E5%B7%B1%E7%99%BB%E5%BD%95%E7%9A%84%E6%95%B0%E6%8D%AE%E5%BA%93%E5%90%8D%E7%A7%B0%3F%E8%BF%99%E4%B8%AA%E7%94%A8%E6%88%B7%E4%B8%8Escott%E6%9D%83%E9%99%90%E7%9B%B8%E5%90%8C%EF%BC%8C%E6%97%A0%E6%B3%95%E5%88%87%E6%8D%A2%E5%88%B0sys%E4%B8%8B%E9%9D%A2!%E6%B2%A1%E6%9C%89%E6%9D%83%E9%99%90%E6%9F%A5%E7%9C%8Bv%24&ari=1&dbv=2&drs=3&pcs=1349x643&pss=1349x5699&cfv=0&cpl=4&chi=1&cce=true&cec=UTF-8&tlm=1465805203&ltu=http%3A%2F%2Fbbs.csdn.net%2Ftopics%2F390394925%2F&ltr=https%3A%2F%2Fwww.baidu.com%2Flink%3Furl%3DUilOoBQ1IbzN0rG1YwOeufV3zo8CdUbR8AaOu8k2qRSHXnCbkptC2aqzwQFMqvUC%26wd%3D%26eqid%3Df0b08f810008a5aa00000003575e6a69&ecd=1&psr=1366x768&par=1366x728&pis=-1x-1&ccd=24&cja=true&cmi=6&col=zh-CN&cdo=-1&tcn=1465805203&qn=fc2ca59bae1d5073&tt=1465805203272.30.276.277" width="200" height="22" align="center,center" vspace="0" hspace="0" marginwidth="0" marginheight="0" scrolling="no" frameborder="0" allowtransparency="true" style="box-sizing: content-box; border-width: 0px; border-style: initial; vertical-align: bottom; margin: 0px;"></iframe>

 

<iframe id="iframeu1636204_0" src="http://pos.baidu.com/nclm?rdid=1636204&dc=2&di=u1636204&dri=0&dis=0&dai=4&ps=1439x893&dcb=BAIDU_SSP_define&dtm=BAIDU_DUP_SETJSONADSLOT&dvi=0.0&dci=-1&dpt=none&tsr=0&tpr=1465805203295&ti=oracle%E4%B8%AD%E6%99%AE%E9%80%9A%E7%94%A8%E6%88%B7%E5%A6%82%E4%BD%95%E6%9F%A5%E7%9C%8B%E8%87%AA%E5%B7%B1%E7%99%BB%E5%BD%95%E7%9A%84%E6%95%B0%E6%8D%AE%E5%BA%93%E5%90%8D%E7%A7%B0%3F%E8%BF%99%E4%B8%AA%E7%94%A8%E6%88%B7%E4%B8%8Escott%E6%9D%83%E9%99%90%E7%9B%B8%E5%90%8C%EF%BC%8C%E6%97%A0%E6%B3%95%E5%88%87%E6%8D%A2%E5%88%B0sys%E4%B8%8B%E9%9D%A2!%E6%B2%A1%E6%9C%89%E6%9D%83%E9%99%90%E6%9F%A5%E7%9C%8Bv%24&ari=1&dbv=2&drs=3&pcs=1349x643&pss=1349x5699&cfv=0&cpl=4&chi=1&cce=true&cec=UTF-8&tlm=1465805203&ltu=http%3A%2F%2Fbbs.csdn.net%2Ftopics%2F390394925%2F&ltr=https%3A%2F%2Fwww.baidu.com%2Flink%3Furl%3DUilOoBQ1IbzN0rG1YwOeufV3zo8CdUbR8AaOu8k2qRSHXnCbkptC2aqzwQFMqvUC%26wd%3D%26eqid%3Df0b08f810008a5aa00000003575e6a69&ecd=1&psr=1366x768&par=1366x728&pis=-1x-1&ccd=24&cja=true&cmi=6&col=zh-CN&cdo=-1&tcn=1465805203&qn=52a05821c6cd0785&tt=1465805203272.32.279.280" width="200" height="22" align="center,center" vspace="0" hspace="0" marginwidth="0" marginheight="0" scrolling="no" frameborder="0" allowtransparency="true" style="box-sizing: content-box; border-width: 0px; border-style: initial; vertical-align: bottom; margin: 0px;"></iframe>

对我有用[0] 丢个板砖[0] 引用 | 举报 | 管理
回复次数:9



关注
hangyangyuhang
hisirhelloa
本版等级:


#1 得分:0回复于: 2013-03-17 18:17:07

什么情况!是太*了吗?
对我有用[0] 丢个板砖[0] 引用 | 举报 | 管理




关注
forgetsam
forgetsam
本版等级:



 

#2 得分:0回复于: 2013-03-18 13:00:40

在登录数据库的时候没有指定数据库名称,所以现在登录到哪个数据库里面自己都不知道。

--扯淡,没有指定数据库你上哪里登录,本机还能不指定数据库,配置一下Oracle环境,远程登录不指定数据库你怎么登。
对我有用[0] 丢个板砖[0] 引用 | 举报 | 管理




关注
hangyangyuhang
hisirhelloa
本版等级:


#3 得分:0回复于: 2013-03-19 16:05:56

我们这里所说的oracle是什么呢?

数据库管理系统!

数据库管理系统干什么的,管理DB。

那当然oracle中可以创建多个数据库。



你创建多个数据库,然后登录时不指定数据库名称,试试呗?

还有,如何用普通用户查看自己所登录的数据库名称?例如:用什么的test_user用户?
对我有用[0] 丢个板砖[0] 引用 | 举报 | 管理




关注
ruihuahan
ruihuahan
本版等级:



 

#4 得分:20回复于: 2013-03-19 16:51:28

select sys_context('userenv', 'db_name') from dual;
对我有用[1] 丢个板砖[0] 引用 | 举报 | 管理




关注
forgetsam
forgetsam
本版等级:



 

#5 得分:0回复于: 2013-03-19 17:12:16

引用 3 楼 hangyangyuhang 的回复:

我们这里所说的oracle是什么呢?

数据库管理系统!

数据库管理系统干什么的,管理DB。

那当然oracle中可以创建多个数据库。

你创建多个数据库,然后登录时不指定数据库名称,试试呗?

试个P,不填写连库信息,是连接当前机器的Oracle默认数据库,这个默认数据库可以通过修改Oracle_SID修改。

引用 3 楼 hangyangyuhang 的回复:

说的更直接点,我远程登录别人的oracle,但是他的机器上装了多个数据库,都有我这个用户,我在登录的时候没有指定数据库名称

你给我远程登录别人的oracle试试,网络上几百台机器你不写连库串它知道连谁的去,它是神仙?
对我有用[0] 丢个板砖[0] 引用 | 举报 | 管理




关注
hangyangyuhang
hisirhelloa
本版等级:


#6 得分:0回复于: 2013-03-19 19:21:37

引用 4 楼 ruihuahan 的回复:

select sys_context('userenv', 'db_name') from dual;

谢谢了,学习了
对我有用[1] 丢个板砖[0] 引用 | 举报 | 管理




关注
hangyangyuhang
hisirhelloa
本版等级:


#7 得分:0回复于: 2013-03-19 19:45:04

引用 5 楼 forgetsam 的回复:

引用 3 楼 hangyangyuhang 的回复:我们这里所说的oracle是什么呢?

数据库管理系统!

数据库管理系统干什么的,管理DB。

那当然oracle中可以创建多个数据库。

你创建多个数据库,然后登录时不指定数据库名称,试试呗?

试个P,不填写连库信息,是连接当前机器的Oracle默认数据库,这个默认数据库可以通过修改Oracle_SID……

我还不知道是连接默认的数据库了??真可笑了!!

看清我的问题?!

我问的是普通用户(没有dba权限)登录数据库后如何看看当前登录的数据库名称!

上面说登录别人机器上的oracle也是为了说我现在只有一个普通的用户,不能通过任何其他方法查看登录的数据库名称,如何在这个用户下面通过命令查看我所登录的数据库名称!!不知道怎么查就说不知道怎么查就完事了呗!打肿脸充胖子。



哎....怀疑....

对我有用[0] 丢个板砖[0] 引用 | 举报 | 管理




关注
forgetsam
forgetsam
本版等级:



 

#8 得分:0回复于: 2013-03-20 12:44:39

就一个章让你气急败坏成这样?我只回答正常人的问题,脑残的不回答。

自己问的秀逗问题都改了又改,至于吗,秀逗了就是秀逗,认了起码证明这个人还行,技术不行而已。
对我有用[0] 丢个板砖[0] 引用 | 举报 | 管理




关注
soloopin
iptv-group
本版等级:


#9 得分:0回复于: 2014-03-27 09:44:23

楼上有个垃圾, 楼主不要生气
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: