错误代码 1045
Access denied for user 'root'@'localhost' (using password:YES)
如果你的mysql也出现以上这种提示, 建议你逐个字看完我这篇文章再按以下方法来尝试解决问题.
这是mysql数据库很多时候出现的问题, 网上流传很多解决办法. 有人按照那些方法, 还真可以把问题解决了; 但也有很多人按那些方法解决不了问题! 而这个中原因, 就是没有对症下药!!!
网上的那些方法, 很多都没有明确指出是什么版本的mysql, 所以导致问题者不能对症下药.
出现这个问题, 通过停止/重启 mysql 服务, 是可以解决的, 这个是最简单的办法! 对于不懂得什么叫做"停止/重启mysql服务"的人来说, 这个最简单的办法就是把服务器主机进行重新启动(就是把你的电脑进行重新启动).
以上是方法A! (这个方法适合任何版本的mysql)
以下是方法B:(方法仅适用于MySQL4.0.26 版本!!! (我估计, 4.0的其他版本应该也可以的))
网上也有说, 就是对root进行重改密码. 对于网上流传的改密码方法, 也是可行的. 请参考以下:
DOS下修改ROOT密码:当然后面安装PHPMYADMIN后修改密码也可以通过PHPMYADMIN修改
格式:mysqladmin -u用户名 -p旧密码 password 新密码
例:给root加个密码ideacmblog
首先在进入CMD命令行,转到MYSQL目录下的bin目录,然后键入以下命令
mysqladmin -uroot password ideacmblog
注:因为开始时root没有密码,所以-p旧密码一项就可以省略了。
D:\php\MySQL\bin>mysqladmin -uroot password ideacmblog回车后ROOT密码就设置为ideacmblog了
但是, 请注意了, 以上方法仅适用于MySQL4.0.26 版本!!! (我估计, 4.0的其他版本应该也可以的)
方法C:
好了, 扯了那么多, 以上的两个方法都不是我本人测试过的, 本人不对真实性负责!
而现在我说一下本人亲自试过的方法, 以供参考:
话说今天, 我的服务器所有php及使用了mysql数据库的网站, 均挂掉了! 无法打开, 并有以下提示:
错误代码 1045
Access denied for user 'root'@'localhost' (using password:YES)
一开始我也是不断搜索google(我本人不喜欢百度!), 去找寻解决的办法. 看了很多, 也参照执行了, 事实上也是解决不了问题. 后来我想到了是版本的问题, 不同的mysql版本, 解决办法是不一定一样的!!记住...
我的mysql版本是: 5.0.22 (mysql-essential-5.0.22-win32)
今天一整天, 那些php网站均罢工. 到今晚才有时间上去服务器继续寻找方法, 但仍然解决不了.
最后, 我决定把mysql卸掉重新安装!
卸载很快, 而且不需要重新启动计算机.
于是, 继续进行安装.
第一步: 打开这个mysql-essential-5.0.22-win32.exe文件;
第二步: 见到窗口弹出, 并点击 Next> 进入下一步;
第三步: 选择 Custom 项, 并点击 Next> 进入下一步;
第四步: 到这一步要注意了, 点击 Change... 选择你原安装mysql的目录; 选择后, 继续点击Next> 进入下一步;
第五步: 点击 Install 进行安装...
安装至下一步, 会提示你进行注册, 选择最后一项, 即跳过注册, 进入下一步正式完成安装.
安装完成后, 继续弹出一个窗口, 提示你是不是立刻进行配置, 选择 Next
选择Standard Configuration.继续点击 Next 进入下一步
这一步里, 把上面那行的勾去掉, 只在 Include ....PATH 那行打勾, 继续点击 Next 进入下一步
在这一步, 点击中间的"Ex****"那顶, 接着配置完毕!
这时候, 你去看看你的mysql正常了没有?? !!
这样就ok了!!!
2222
The processing instruction target matching "[xX][mM][lL]" is not allowed.
这个异常解释为:xml文件不能被解析,一般出现这样的问题在于xml格式上,并且问题多出现在xml文件的头部。
总结:前面不要有任何其他字符,如空格、回车、换行这些否则就会出现上面的异常。
配置jdbc驱动
?2.在mysql中
用creat database jtest;命令生成数据库jtest;
use jtest;
利用creat table info(NO varchar(5),NAME varchar(20),AGE varchar(5)); 生成info表。
insert into info values('1','aa','12'); //插入数据,多插入几个。
select * from info; //查看一下插入的数据。
3.测试代码:建立一个java工程文件。
//mysql的jdbc驱动测试代码
?import java.sql.*;
public class testMysql {
?public static void main(String[] args) {
//驱动程序名
String driverName="com.mysql.jdbc.Driver";
//数据库用户名
String userName="root";
//密码
String userPasswd="root";
//数据库名
String dbName="jtest";
//表名
String tableName="info";
//联结字符串
String url="jdbc:mysql://localhost/"+dbName+"?user="+userName+"&password="+userPasswd;
System.out.println(url);
try{
Class.forName("com.mysql.jdbc.Driver").newInstance();
Connection connection=DriverManager.getConnection(url);
Statement statement = connection.createStatement();
String sql="SELECT * FROM "+tableName; //注意FROM后面有空格。
ResultSet rs = statement.executeQuery(sql);
// 获得数据结果集合
ResultSetMetaData rmeta = rs.getMetaData();
// 确定数据集的列数,亦字段数
int numColumns=rmeta.getColumnCount();
// 输出每一个数据值
for(int i=1;i<=numColumns;i++) {
if(i
System.out.print(rmeta.getColumnName(i)+" | ");
else
System.out.println(rmeta.getColumnName(i));
}
while(rs.next()){
for(int i=1;i<=numColumns;i++) {
if(i
System.out.print(rs.getString(i).trim()+" | ");
else
System.out.println(rs.getString(i).trim());
}
}
rs.close();
connection.close();
}
catch(Exception ex){
System.out.println(ex);
System.exit(0);
}
?}
}
4、运行
jdbc:mysql://localhost/jtest?user=root&password=root
NO | NAME | AGE
1 | aa| 12
检查persistence.xml。
提示说没找到我们申明的持久单元。
该行:
<provider>org.hibernate.ejb.HibernatePersistence</provider>
不存在于系统中,需要去hibernate网站
下载Hibernate EntityManager import到工程中
注:
Hibernate 3.2以及以后的版本开始支持JPA,涉及JPA的子项目有三个,
它们分别是:
— Hibernate Core:Hibernate框架的核心实现。
— Hibernate Annotations:支持JDK 5.0的注释。
— Hibernate EntityManager:支持JPA的实现。