这几天重新运行用asp.net+MySQL的一个项目,不得不重装MySql,谁知遇到问题一堆,问题解决过程如下:
1.Windows Services无法启动,进程意外终止
解决:因为以前装过MySQL,经查资料是My.ini问题,虽然多次安装--删除--注册表删除,一直没有解决,后来解决如下:在Configuration时,更改Windows Services名称,更改端口号(关键),问题解决。
2.MySQL恢复数据,
错误提示:the 'InnoDB' feature is disabled;you need MySQL built with 'InnoDB' to have it working
解决如下:在My.ini中:
[mysqld]下添加:
innodb_data_file_path=ibdata:30M
3.配置Web.Config,验证引用MySQLdriverCS.dll
错误提示:System.NullDLLException 无法动态加载libmySQL.dll
解决方法:将MySQL的bin目录下的libmySQL.dll拷贝到System32下,问题解决
4.端口号错误,因为我在配置MySQL时,取值:3307(默认3306)。单步调试发现MySQLDriverCS.cs中默认端口号为3306,所以出错,随后定义
myConnection.Port = 3307;
但发现MySQLDriverCS.cs中Port为只读,所以不行
后来发现MySQLConnectionString有如下三个构造函数
public class MySQLConnectionString
{
public string AsString;
public MySQLConnectionString(string database, string login, string pass);
public MySQLConnectionString(string server, string database, string login, string pass);
public MySQLConnectionString(string server, string database, string login, string pass, int port);
}
故采用第三个构造函数,问题解决
5.由于以前备份时候没有指定语言,MySQL默认Latin1语,故恢复出来的全是乱码,此问题还没有解决。
第一次配置MySQL,遇到这么多问题,汗,学习!!