Access denied for user 'root'@'localhost' (using password: YES)错误解决


之前跑的好好的mybatis的demo,突然无效,连接数据库报错。
Exception in thread "main" org.apache.ibatis.exceptions.PersistenceException:
### Error querying database.  Cause: java.sql.SQLException: Access denied for user 'root'@'localhost' (using password: YES)
这个错误,查阅网上,都说是权限问题,或者重置密码,但我之前才刚重新安装数据库,重设置密码,不应该出现这个问题。
后来,想到更换密码了,回去查看密码,因为使用了两种方式连接数据库,忽略了另一个密码的修改,改正如下:

/**
	 * 不使用XML配置文件生成SqlSession
	 * @return
	 */
	private static SqlSession createSqlSession(){
		
		//通过创建properties的方式
		Properties properties = new Properties();
		properties.setProperty("driver", "com.mysql.jdbc.Driver");
		properties.setProperty("url", "jdbc:mysql://localhost:3306/test");
		properties.setProperty("username", "root");
		properties.setProperty("password", "123456");
		PooledDataSourceFactory pooledDataSourceFactory = new PooledDataSourceFactory();
		pooledDataSourceFactory.setProperties(properties);
		DataSource dataSource = pooledDataSourceFactory.getDataSource();

修改后,问题顺利解决。
与网上描述不同,密码错误,也会报YES错误,特此记录

猜你喜欢

转载自holyland.iteye.com/blog/2176651