解决MySQL数据库user权限不够的简单方法
MySQL是目前世界上更流行的关系型数据库管理系统之一,由于其开源免费、性能稳定等优势,被越来越多的企业和个人所使用。但是在使用MySQL时,有时由于用户权限不够,可能会导致无法进行某些操作,这时候就需要进行权限设置。本文将介绍解决MySQL数据库user权限不够的简单方法。
一、了解MySQL用户权限
在MySQL中,每个用户都有一个用户账号和一个密码。用户账号由用户名和主机名组成,主机名指的是该用户可以连接到MySQL 服务器 的IP地址或者域名。用户权限指的是用户可以对MySQL中哪些库和表进行操作。
MySQL中常见的用户权限有:
1. SELECT:查询数据权限。
2. INSERT:插入新数据权限。
3. UPDATE:修改数据权限。
4. DELETE:删除数据权限。

5. CREATE:创建新库和新表权限。
6. DROP:删除库和表的权限。
7. RELOAD:重新载入权限表的权限。
8. SHUTDOWN:关闭MySQL的权限。
9. PROCESS:查看正在运行的MySQL进程的权限。
10. FILE:将查询结果输出到文件的权限。
11. REFERENCES:创建外键的权限。
12. INDEX:创建索引的权限。
13. ALTER:修改表结构的权限。
14. SHOW>香港服务器首选树叶云,2H2G首月10元开通。树叶云(shuyeidc.com)提供简单好用,价格厚道的香港/美国云服务器和独立服务器。IDC+ISP+ICP资质。ARIN和APNIC会员。成熟技术团队15年行业经验。
如何让mysql以root用户远程登陆mysql数据库
开启MySQL的远程登陆帐号有两大步:1、确定服务器上的防火墙没有阻止3306端口。 MySQL默认的端口是3306,需要确定防火墙没有阻止3306端口,否则远程是无法通过3306端口连接到MySQL的。 如果您在安装MySQL时指定了其他端口,请在防火墙中开启您指定的MySQL使用的端口号。 如果不知道怎样设置您的服务器上的防火墙,请向您的服务器管理员咨询。 2、增加允许远程连接MySQL用户并授权。 1)首先以root帐户登陆MySQL在Windows主机中点击开始菜单,运行,输入“cmd”,进入控制台,MySQL的bin目录下,然后输入下面的命令。 在Linux主机中在命令提示行下输入下面的命令。 >MySQL-uroot-p6为root用户的密码。 2)创建远程登陆用户并授权>grantallPRIVILEGESondiscuz.*toted@123.123.123.123identifiedby;上面的语句表示将discuz数据库的所有权限授权给ted这个用户,允许ted用户在123.123.123.123这个IP进行远程登陆,并设置ted用户的密码为。 下面逐一分析所有的参数:allPRIVILEGES表示赋予所有的权限给指定用户,这里也可以替换为赋予某一具体的权限,例如:select,insert,update,sqlserver/=_blank>delete,create,drop等,具体权限间用“,”半角逗号分隔。 discuz.*表示上面的权限是针对于哪个表的,discuz指的是数据库,后面的*表示对于所有的表,由此可以推理出:对于全部数据库的全部表授权为“*.*”,对于某一数据库的全部表授权为“数据库名.*”,对于某一数据库的某一表授权为“数据库名.表名”。 ted表示你要给哪个用户授权,这个用户可以是存在的用户,也可以是不存在的用户。 123.123.123.123表示允许远程连接的IP地址,如果想不限制链接的IP则设置为“%”即可。 为用户的密码。 执行了上面的语句后,再执行下面的语句,方可立即生效。 >flushprivileges;远程登录mysql一些常用的代码段,大家可参考一下。 一、允许root用户在任何地方进行远程登录,并具有所有库任何操作权限,具体操作如下:在本机先使用root用户登录mysql:mysql-uroot-pyoupassword进行授权操作:mysql>GRANTALLPRIVILEGESON*.*TOroot@%IDENTIFIEDBYyoupasswordWITHGRANTOPTION;重载授权表:FLUSHPRIVILEGES;退出mysql数据库:exit二、允许root用户在一个特定的IP进行远程登录,并具有所有库任何操作权限,具体操作如下:在本机先使用root用户登录mysql:mysql-uroot-pyoupassword进行授权操作:GRANTALLPRIVILEGESON*.*TOroot@172.16.16.152IDENTIFIEDBYyoupasswordWITHGRANTOPTION;重载授权表:FLUSHPRIVILEGES;退出mysql数据库:exit三、允许root用户在一个特定的IP进行远程登录,并具有所有库特定操作权限,具体操作如下:在本机先使用root用户登录mysql:mysql-uroot-pyoupassword进行授权操作:GRANTselect,insert,update,deleteON*.*TOroot@172.16.16.152IDENTIFIEDBYyoupassword;重载授权表:FLUSHPRIVILEGES;退出mysql数据库:exit四、删除用户授权,需要使用REVOKE命令,具体命令格式为:REVOKEprivilegesON数据库[.表名]FROMuser-name;具体实例,先在本机登录mysql:mysql-uroot-pyoupassword进行授权操作:GRANTselect,insert,update,deleteONTEST-DBTOtest-user@172.16.16.152IDENTIFIEDBYyoupassword;再进行删除授权操作:REVOKEallonTEST-DBfromtest-user;****注:该操作只是清除了用户对于TEST-DB的相关授权权限,但是这个“test-user”这个用户还是存在。 最后从用户表内清除用户:DELETEFROMuserWHEREuser=test-user;重载授权表:FLUSHPRIVILEGES;退出mysql数据库:exit
mysql怎么查看用户权限
如果需要查看MySQL用户权限,应该如何实现呢?下面就为您介绍查看MySQL用户权限的方法,并对授予MySQL用户权限的语句进行介绍,供您参考。
查看MySQL用户权限:show grants for 你的用户比如:show grants for root@localhost;Grant 用法GRANT USAGE ON *.* TO discuz@localhost IDENTIFIED BY PASSWORD *C242DDD213BE9C6F8DA28DBF69FC79A86EB;GRANT ALL PRIVILEGES ON `discuz`.* TO discuz@localhost;我先按我的理解解释一下上面两句的意思建立一个只可以在本地登陆的 不能操作的用用户名 discuz 密码为 ***** 已经加密了的然后第二句的意思是 ,给这个discuz用户操作discuz数据库的所有权限使用GRANTGRANT命令用来建立新用户,指定用户口令并增加用户权限。
其格式如下:mysql> GRANT
连接mysql提示Net work error?
net work error错误是指网络错误,或者是端口错误。 可以从以下几个方面去排查1. 检查你连接mysql的ip正确,如果正确在ping一下,如果ping不同,则说明网络不通,检查你的网段是否一致。 2. 如果能ping通,检查mysql安装机器的防火墙(windows)或者端口是否开放(linux)。 这时候可以在mysql服务器上直接链接mysql试一下。 3. 如果mysql服务器上能连接成功,并且防火墙,端口都开放,在检查下账户名或者密码,不够这种情况一般都不会报network error,报的都是access denied这样的错误
发表评论