LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 1246|回复: 3

关于MySQL的用户登陆问题.

[复制链接]
发表于 2003-6-14 17:10:05 | 显示全部楼层 |阅读模式
这两天买了一本PHP+MySQL的书一直在学...然则遇到了一个问题...希望得到各位的指导
        我使用的是RedHat 9.0建立的PHP+MySQL的服务器..使用的基本都是系统的默认设置..然则在MySQL服务器用户管理上出了问题..本身服务器已经正常的运转了.我找了一个免费的PHP+MySQL的论坛原码在服务器上已然可以正常的工作..
        PHP.ini里面我似乎只写了默认的MySQL密码,并没有写默认用户名..似乎是用root登陆MySQL的
        MySQL也依照了网上的教程设置了密码.命令如下:
        #mysqladmin password **
        **部分就是我放在PHP.ini文件中的默认密码.

        可是我看书到MySQL部分的时候..按照上面的命令测试却发现这样的问题.
        我的主机名是Silver,用SSH远程连入我做的服务器,无论是用root用户还是使用我建立的普通liunx用户,在使用命令
        #mysql -h SIlver -u root
        时直接就可以登陆进入MySQL..密码都不需要输入,而使用如下命令
        #mysql -h SIlver -u root -p
        之后提示我输入密码,然则输入密码之后出现了如下的错误提示
        ERROR 1045:Access denied for user: 'root@Silver'(Using password:YES)
        而我去掉-h Silver之后使用命令
        #mysql -root
        出现如下的错误提示
        ERROR 1045:Access denied for user: 'root@localhost'(Using password:NO)
        使用命令
        #mysql -root -p
        并按照提示输入密码后就顺利登陆进入数据库了,这个Using password到底是什么意思呢?
       
        而我用root用户登陆进入数据库之后分别建立了一个库和一个用户
        建库命令如下:
        create database htx;
        建立用户命令如下:
        grant select,insert,update,delete
        on htx.*
        to htx identified by 'htx123';
        用户名我用的也是htx.. 可是此用户建立完了之后.也是问题多多.首先是登陆
        像root一样,首先是命令中带-h Silver的情况
        #mysql -h SIlver -u htx
        直接可以登陆,不需要输入密码
        #mysql -h SIlver -u htx -p
        按提示输入密码之后出现:
        ERROR 1045:Access denied for user: 'htx@Silver'(Using password:YES)
        去掉了-h Silver之后htx的情况和root就不同了,用命令
        #mysql -u htx
        也是不需输入密码就可以进入而加上-p之后
        #mysql -u htx -p
        并且按提示输入密码,则还是提示
        ERROR 1045:Access denied for user: 'htx@localhost'(Using password:YES)
        并且我在创建用户的时候指定的对库htx的权限似乎完全没有了,htx用不输入密码的情况下登陆并使用命令
        use htx
        却提示:
        ERROR 1044: Access denied for user:'@localhost' to database 'htx'
        似乎我根本没有建立这个用户一样.
        然则使用root登陆之后使用
        use htx
        就有
        Database changed
        的正确提示....实在是不解...总觉得似乎HTX这个用户像是没有建立起来一样.
        再次用root登陆输入上面的建立htx用户的命令有如下提示:
        Query OK, 0 rows affected (0.00 sec)
        似乎没有改变一样,是不是我哪里搞错了呢?
        名叫htx的库建立起来了,可是一起创建的用户却没有建立起来.
       
        另外.我用root登陆进入数据库想改变root的密码,使用的命令是:
        update user set password=** where user='root';
        却得到错误提示如下:
        ERROR 1046:No database Selected
       
        实在是有些焦头烂额了呀,请各位大侠点解一下吧~!
发表于 2003-6-15 16:37:53 | 显示全部楼层
请大家指教,本帖转入数据库版。

多谢。
发表于 2003-6-16 07:52:33 | 显示全部楼层
MySQL的用户权限设计得很精巧,也很有效,
如果你想弄懂它的权限运作,最好的办法就是自己看看它的权限运作模式。
请看我发在本版的MySQL教程,它在精华区,
看完后,我想你的所有问题都会解决。
 楼主| 发表于 2003-6-16 14:27:25 | 显示全部楼层
万分感谢..正在看.......
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表