PDA

查看完整版本 : 什么是独占方式?


banban
2003-06-30, 23:04
来自esnow的大作:
第 7 贴

我知道了。如果你新建立一个数据库之后,然后用独占方式加一个用户,也就是用
mysql> GRANT ALL ON db.*
-> TO dbmanager@server.host.net
-> IDENTIFIED BY "managedb" ;
那么此用户就可以登陆了。因为在这之前没有给此数据库加其他的访问用户。
用这样方式建立完之后。其他用户就无法访问了!!!
我出现错误的原因就是因为我已经加了个其他的用户访问此数据库,使用了独占方式,我再加
用户的时候就会出现拒绝访问的错误提示了。。。

不是这样的呀。我参照你的贴子,自己试了一下。发现虽然我新建一个数据库db,
然后写如下语句( 下面的语句表示用独占方式加一个用户吗)
mysql> GRANT ALL ON db.*
-> TO sam@localhost
-> IDENTIFIED BY "a" ;
故sam@localhost就可以访问db数据库了,就是加了sam@localhost用户访问子此数据库(db)
但是我也还可以加入一个访问db数据库的用户,不会拒绝访问啊。如
mysql> GRANT ALL ON db.*
-> TO jim@localhost
-> IDENTIFIED BY "a" ;
jim@localhost这个用户也可以访问db这个数据库。那独占方式又是一个什么的概念呢?

droopy
2003-07-01, 08:53
独占方式是支持事务比较好的关系型数据库的一个功能吧,比如oracle,ms sql server,
建议你看看关系型数据库原理方面的书,简单的说
在你操作关系型数据库时,你的drop,update等不是直接执行的,必须先指定一个事务类型,
set transaction
然后在这里面指定,只读,写,独占方式等,
然后是你的操作,update等,
最后是一个admit,提交给数据库这些操作,

mysql不支持事务,所有不支持事务的处理,他只有一个功能很简单的这方面的命令,
lock,unlock,就是独占方式吧,当你把一个db,table,等lock後,别人就无法修改了。