无法调用MySQL数据库问题一解

来源:岁月联盟 编辑:zhuzhu 时间:2009-01-05
  [一下部分问题来源于搜索]

  尝试用MySQLAdminstratorGUITool登入MySQLServer,Server却回复错误讯息:Host'rgergeripfer124'isnotallowedtoconnecttothis

  MySQLserver

  这个是因为权限的问题,处理方式如下:

  shell>mysql--user=root-p

  输入密码

  mysql>usemysql

  mysql>GRANTSELECT,INSERT,UPDATE,DELETEON[db_name].*TO[username]@[ipadd]identifiedby'[password]';

  [username]:远程登入的使用者代码

  db_name]:表示欲开放给使用者的数据库称

  [password]:远程登入的使用者密码

  [ipadd]:IP地址或者IP反查后的DNSName,此例的内容需填入'125.25.25.25',包函上引号(')

  (其实就是在远端服务器上执行,地址填写本地主机的ip地址。)

  如果希望开放所有权限的话请执行:

  mysql>updateusersetselect_priv='Y',Insert_priv='Y',Update_priv='Y',delete_priv='Y',Create_priv='Y',Drop_priv='Y',Reload_priv='Y',shutdown_priv='Y',Process_priv='Y',File_priv='Y',Grant_priv='Y',references_priv='Y',Index_priv='Y',Alter_priv='Y',Show_db_priv='Y',Super_priv='Y',Create_tmp_table_priv='Y',Lock_tables_priv='Y',Execute_priv='Y',Repl_slave_priv='Y',Repl_client_priv='Y'whereuser='[username]';

  如何解决客户端与服务器端的连接(mysql):xxx.xxx.xxx.xxxisnotallowedtoconnecttothismysqlserv

  这两天搞MySQL,遇到一些问题,怕忘掉,放上来,留着备用

  这个方法是在google上搜出来的,不过他是转自CSDN,^_^

  1、进入mysql,创建一个新用户xuys:

  格式:grant权限on数据库名.表名用户@登录主机identifiedby"用户密码";

  grantselect,update,insert,deleteon*.*toxuys@192.168.88.234identifiedby"xuys1234";

  查看结果,执行:

  usemysql;

  selecthost,user,passwordfromuser;

  可以看到在user表中已有刚才创建的xuys用户。host字段表示登录的主机,其值可以用IP,也可用主机名,

  将host字段的值改为%就表示在任何客户端机器上能以xuys用户登录到mysql服务器,建议在开发时设为%。

  updateusersethost='%'whereuser='xuys';

  2、./mysqladmin-uroot-p21centuryreload

  ./mysqladmin-uroot-p21centuryshutdown

  3、./mysqld_safe--user-root&

  记住:对授权表的任何修改都需要重新reload,即执行第3步。

  如果经过以上3个步骤还是无法从客户端连接,请执行以下操作,在mysql数据库的db表中插入一条记录:

  usemysql;

  insertintodbvalues('192.168.88.234','%','xuys','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y');

  updatedbsethost='%'whereuser='xuys';

  重复执行上面的第2、3步。

  MYsql如果版本相同,可以复制文件夹.

  存储的数据格式InnoDB比MyISAM快一些,但是InnoDB的数据全部放在一个文件夹下面,数据量大了就不行了.so,个人一般用MYisam比较好.