如果你忘记了你的MYSQL的root口令的话,你可以通过下面的过程恢复。 1. 向mysqld server 发送kill命令关掉mysqld server(不是 kill -9),存放进程ID的文件通常在MYSQL的数据库所在的目录中。 kill `cat /mysql-data-directory/hostname.pid` 你必须是UNIX的root用户或者是你所运行的SERVER上的同等用户,才能执行这个操作。 2. 使用`--skip-grant-tables' 参数来启动 mysqld。 3. 使用`mysql -h hostname mysql'命令登录到mysqld server ,用grant命令改变口令。你也可以这样做:`mysqladmin -h hostname -u user password 'new password''。 (其实也可以用use mysql; update user set password =password('yourpass') where user='root' 来做到。) 4. 载入权限表: `mysqladmin -h hostname flush-privileges' ,或者使用 SQL 命令`FLUSH PRIVILEGES'。(当然,在这里,你也可以重启mysqld。) 还有一个办法 就是将在其它计算机中安装一次 MySQL , 然后将它的安装目录下的 mysql 目录 复制到你的计算机 中
我也遇到过同样问题,MYSQL4.0.9+tomcat4.1.18+redhat7.2查了好多办法,最终起作用的是:以身份ROOT: mysql> use mysql mysql> update user set HOST='%' where HOST='localhost'; mysql> update db set HOST='%' where HOST='localhost' mysql> exit#bin/mysqladmin shutdown #bin/safe_musqld & 这回再运行你的JSP程序就可以了。。 其实出现哪个错误的原因主要是: 权限的问题,更改user 和 DB中的 localhost 为 % 就可以了
1. 向mysqld server 发送kill命令关掉mysqld server(不是 kill -9),存放进程ID的文件通常在MYSQL的数据库所在的目录中。
kill `cat /mysql-data-directory/hostname.pid`
你必须是UNIX的root用户或者是你所运行的SERVER上的同等用户,才能执行这个操作。
2. 使用`--skip-grant-tables' 参数来启动 mysqld。
3. 使用`mysql -h hostname mysql'命令登录到mysqld server ,用grant命令改变口令。你也可以这样做:`mysqladmin -h hostname -u user password 'new password''。
(其实也可以用use mysql; update user set password =password('yourpass') where user='root' 来做到。)
4. 载入权限表: `mysqladmin -h hostname flush-privileges' ,或者使用 SQL 命令`FLUSH PRIVILEGES'。(当然,在这里,你也可以重启mysqld。)
还有一个办法
就是将在其它计算机中安装一次 MySQL ,
然后将它的安装目录下的 mysql 目录
复制到你的计算机 中
mysql> use mysql
mysql> update user set HOST='%' where HOST='localhost';
mysql> update db set HOST='%' where HOST='localhost'
mysql> exit#bin/mysqladmin shutdown
#bin/safe_musqld &
这回再运行你的JSP程序就可以了。。
其实出现哪个错误的原因主要是:
权限的问题,更改user 和 DB中的 localhost 为 % 就可以了