mysql用户管理与权限管理

mysql用户管理与权限管理

ID:20433977

大小:148.82 KB

页数:11页

时间:2018-10-12

mysql用户管理与权限管理_第1页
mysql用户管理与权限管理_第2页
mysql用户管理与权限管理_第3页
mysql用户管理与权限管理_第4页
mysql用户管理与权限管理_第5页
资源描述:

《mysql用户管理与权限管理》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、MySQL用户管理与权限管理MySQL的权限系统主要用来对连接到数据库的用户进行权限的验证,以此来判断此用户是否属于合法的用户,如果是合法用户则赋予相应的数据库权限。1权限表安装mysql吋会tl动安装一个名为mysql的数掘库。Mysql数掘庫下面存储的都足权限表。用户登陆以沿,mysql数据库系统会根据这些权限表的闪容为每个用户赋予相应的权限。炎训可以川:showdatabases;语句炎看;Mysql屮的表:User:权限表包括字段用户列、权限列、安全列和资源控制列;>User中用户列包括host(主机名)us

2、er(用户名)password(密码),他们决定Y用户是否可以登录。>User巾的权限列也拈了一些以例如selectpriv等以priv结尾的字段,这些字段决定了用户所拥有的权限。>User表中安全列宥四个字段,主要用于加密。>User表中资源控制列中字段规定了每小吋最多可执行多少次查询、更新、建立连接等权限。Db:存储某个用户对一个数据座的权限用户列(hostdbhost)权限列Host:扩展dbTablc_priv:对单个表进行权限设置Columns_priv:对单个数据进行权限设置Procs_priv:对存储过

3、程和存储函数进行权限设置增加一个Greatroutinepriv字段和Alterrountinepriv字段创逮和修改存储过程2权限系统的工作原理MySQL权限系统通过下而两个阶段进行认证:(1)对连接的用户进行身份认证,合法的用户通过认证,不合法的用户拒绝连接;(1)对通过认证的合法用户赋予相应的权限,用户可以在这些权限范閛内对数据庳做和应的操作。对于身份的认证,MySQL是通过IP地址和用户名联合进行确认的,例如MySQL安装默认创建的用户root@localhost表示用户root只能从本地(localhost

4、)进行连接方可以通过认证,此用户从其他任何主机对数据库进行的连接都将被拒绝。也就是说,同样的一个用户名,如果来自不同的IP地址,则MySQL将其视为不同的用户。MySQL的权限表在数据库启动的时候就载入内存,当用户通过身份认证后,就在内存中进行相应权限的存取,这样,此用户就可以在数裾库中做权限范围内的各种操作了。3权限表的存取在权限存取的两个过程中,系统会用到“mysql”数掘库中user、host和db这3个最重要的权限表,user中的列主要分为4个部分:用广列、权限列、安全列和资源控制列。其屮,通常用得最多的是用

5、户列和权限列,其屮权限列有分为普通权限和管理权限。普通权限主要用于数据库的操作,而管理权限主耍用来对数据库进行管理的操作。>权限表的存取过程先从user表中的host、user和password这3个字段中判断连接的IP、用户名和密码是否存在于表屮,如果存在,则通过身份验证,否则拒绝连接。如果通过身份验证,则按照以下权限表的顺序得到数据库权限:user-〉db-〉tables_priv-〉columns_priv。当用户表通过权限认证,进行权限分配时,将按照uscr_〉db->tables_priv-〉columns

6、_priv的顺序进行权限分配,卯先检查全局权限表user,如果user中对应权限为“Y”,则此用广对所有数据库的权限都为“Y”,将不再检查db、tablespriv和columns_priv;如果为“N”,则到db表中检查此用户对应的具体数据庳,并得到db中为“Y”的权限;如果db屮相应权限为“N”,则检查tables_priv屮此数据库对应的具体表,取得表中为“Y”的权限;如果tablcs_priv中相应权限为“N”,则检查columns_priv中此表对应的具体列,取得列中为“Y”的权限。4修改密码刚刚安装完的M

7、ysql,只一冇个root用户,密码为空,而且只能在本机登录!不安全,所以呢,我们要做的第一件事就是修改密码。i.使用mysqladmin。输入:mysqladmin-uroot-pllllllpassword新密码注:111111为原mysql密码,后面的’passwordnewpasswd’是连接数据库成功后要执行的命令。如果P和111111之间存在空格,将会报111111不是执行命令的错误。执行这个命令后,需要输入root的原密码,这样root的密码将改为newpasswd。同样,把命令里的root改为你的用广

8、名,你就可以改你自己的密码了。当然如果你的mysqladmin连接不上mysqlserver,或者你没有办法执行mysqladmin,那么这种方法就是无效的,而且mysqladmin无法把密码清空。ii.用setpassword命令mysql>SETPASSWORDFOR'root'(a*localhost1=PASSWORD('123456'

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。