无法连接到mysql

无法连接到mysql

最近我已将 MySql 的数据文件夹移动到了其他文件夹,如我的配置文件下列的:

[mysqld]
端口= 3306
套接字=“D:/xampp/mysql/mysql.sock”
basedir="D:/xampp/mysql"
tmpdir="D:/xampp/tmp"
datadir="我:/Dropbox/mysql/data"
pid_file="mysql.pid"
跳过外部锁定
密钥缓冲区 = 16M
最大允许数据包 = 1M
表缓存 = 64
排序缓冲区大小 = 512K
网络缓冲区长度 = 8K
读取缓冲区大小 = 256K
读取缓冲区大小 = 512K
myisam_sort_buffer_size = 8M
log_error="mysql_error.log"
innodb_force_recovery = 4
innodb_use_sys_malloc = 1

但是无法通过XAMPP控制面板启动mysql,下面是两个文件的内容:埃尔维斯·厄尔mysql_错误日志

120819 20:12:28 [注意] 插件‘FEDERATED’已被禁用。
InnoDB:InnoDB内存堆已禁用
InnoDB:互斥锁和 rw_locks 使用 Windows 互锁函数
InnoDB:压缩表使用 zlib 1.2.3
120819 20:12:28 InnoDB:初始化缓冲池,大小 = 128.0M
120819 20:12:28 InnoDB:缓冲池初始化完成
120819 20:12:28 InnoDB:支持的最高文件格式是 Barracuda。
InnoDB:ibdata 文件中的日志序列号不匹配
InnoDB:ib_logfiles 中的日志序列号!
120819 20:12:28 InnoDB:数据库未正常关闭!
InnoDB:开始崩溃恢复。
InnoDB:从 .ibd 文件读取表空间信息...
InnoDB:从双写中恢复可能半写的数据页
InnoDB:缓冲区...
120819 20:12:31 InnoDB:1.1.4 已启动;日志序列号 7527526
120819 20:12:31 [注意] 事件调度程序:已加载 0 个事件
120819 20:12:31 [注意] mysqld:已准备好连接。
版本:'5.5.8' 套接字:'' 端口:3306 MySQL 社区服务器(GPL)

的内容mysql_错误日志

120819 20:12:24 [注意] 插件‘FEDERATED’已被禁用。
InnoDB:InnoDB内存堆已禁用
InnoDB:互斥锁和 rw_locks 使用 Windows 互锁函数
InnoDB:压缩表使用 zlib 1.2.3
120819 20:12:24 InnoDB:初始化缓冲池,大小 = 16.0M
120819 20:12:24 InnoDB:缓冲池初始化完成
120819 20:12:24 InnoDB:文件操作中出现操作系统错误编号 3。
InnoDB:该错误表示系统找不到指定的路径。
InnoDB:如果你正在安装 InnoDB,请记住你必须创建
InnoDB:自己创建目录,InnoDB 不会创建它们。
InnoDB:文件名 G:\Dropbox\mysql\data\ibdata1
InnoDB:文件操作调用:‘创建’。
InnoDB:无法继续操作。

我需要处理两个问题。它们是:

  1. 从终端,我在 D:\xampp\mysql\bin 中运行 mysqld。然后使用 XAMPP 控制面板启动 mysql。它运行良好。
  2. 事实上,我将数据文件夹改为我:/Dropbox/mysql/数据但是mysql仍然提示错误:在之前移动的G:中未创建。

我的问题是:如何配置 mysql 以将数据文件夹移动到新文件夹?

我非常感谢所有帮助。

谢谢。

答案1

InnoDB:文件名 G:\Dropbox\mysql\data\ibdata1

您是否尝试将 MySQL 数据文件存储在文件共享服务上?

我认为这是非常不明智因为 DBMS 和文件共享服务都希望对二进制数据文件进行低级更改,这使得数据库很容易损坏。

将数据文件存储得尽可能“靠近”操作它们的进程,即数据库服务器进程。

答案2

看看这个:

“InnoDB:文件操作中出现操作系统错误 3。”

然后:

redmachine ~ # perror 3
OS error code   3:  No such process

权限需要与旧文件夹相同,目录结构需要与旧数据文件夹相同。看起来您可能还需要修复那里的一些表。

看一下 mysql 列表上的这篇文章:http://lists.mysql.com/mysql/100211

相关内容