我应该采取什么步骤?
#1 楼
关闭mysql。
将当前数据目录中的所有文件移动到新位置(在步骤3-
datadir
参数中检出位置)。找到
my.ini
文件(位于mysql安装目录中)。更改参数值datadir
以指向新位置。启动mysql。
#2 楼
尽管您要使用Windows,但对于那些最终在这里寻找linux / ubuntu方向的人来说,这里有一些好的指导:假设:
您有mysql数据在外部/ usb /备用驱动器
/mountpoint/var/lib/mysql
上,也许是从已死机或旧安装的计算机上下载的您希望将其移动到本地的新Ubuntu安装
/var/lib/mysql
>
使用
sudo /etc/init.d/mysql stop
停止MySQL。使用
sudo cp -Rp /var/lib/mysql /var/lib/mysql.backup
备份当前(干净的)MySQL数据目录。然后使用以下命令从旧驱动器复制旧数据目录:
sudo cp -Rp /mountpoint/var/lib/mysql /var/lib/mysql
其中mountpoint
是安装的路径。现在使用以下命令重新启动MySQL:
sudo /etc/init.d/mysql start
运气好的话,MySQL应该重新启动,并且您应该恢复旧的
数据库。
来源mb_webguy@ubuntuforums.org
评论
(!)这将不起作用,因为配置仍指向旧位置
– ADOConnection
18年7月11日在10:50
#3 楼
解决方案1:首先,使用`mysqldump'备份数据。如果从官方程序包安装Mysql Server,则可以通过从以下位置运行程序MySQLINstanceConfig.exe来实现:服务器的bin目录。
导入数据
第二个解决方案(不推荐,但可在同一台机器上使用)
< br停止Mysql服务器。
将数据从数据目录复制到新目录
打开my.cnf文件(在我的情况下为“ C:\ ProgramData \ MySQL \ MySQL Server 5.5 \ my.ini” )
查找类似datadir =“ C:\ ProgramData \ MySQL \ MySQL Server 5.5 \ data \”的行,并将路径更改为新位置
启动服务器
从版本开始5.6 MySQLInstanceConfig.exe不再分发。此功能已由安装程序取代。 http://bugs.mysql.com/bug.php?id=66306
#4 楼
对于Windows,自MySQL Installer 1.4.6(2015-04-07)起,可以在注册表项中指定数据位置,该注册表项指定my.ini
文件的位置,因此,如果数据最初是使用非默认方式安装的, my.ini
的位置将不在C:\ProgramData\MySQL\MySQL Server x.x\
中。注册表值的位置是(至少从MySQL 5.6开始):
HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\MySQL AB\MySQL Server x.x\
Location
是一个REG_SZ
,它指向MySQL应用程序文件所在的文件夹;默认情况下:C:\Program Files\MySQL\MySQL Server x.x\
DataLocation
是一个REG_SZ
,它指向my.ini
所在的文件夹;默认情况下也:C:\Program Files\MySQL\MySQL Server x.x\
此外,
my.ini
文件路径也包含在此注册表项下的service命令中:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\MySQLXX
ImagePath
值中的<43。该字符串的默认值为:REG_EXPAND_SZ
因此,最重要的是,在这种情况下,要移动数据文件,您必须遵循@ITCuties发布的步骤,并添加一些补充。
<完整步骤如下:
关闭mysql。
查找上面的
"C:/Program Files/MySQL/MySQL Server 5.6/bin\mysqld" --defaults-file="C:\Program Files\MySQL\MySQL Server x.x\my.ini" MySQLXX
注册表值以找到当前的DataLocation
文件位置,如果您还想要移动my.ini
文件更新my.ini
路径并将DataLocation
文件移动到此新路径。如果要更改
my.ini
文件的位置,则需要更新上面列出的服务命令注册表项中的路径。 />打开my.ini
文件,找到my.ini
参数。将文件从此datadir
路径移动到您想要数据驻留的路径,然后还使用此新路径更新datadir
参数。启动mysql。
评论
我发现我必须使用/而不是\作为datadir目录路径中的目录分隔符。我正在Windows 10上使用WAMPserver。
–史蒂夫
16-10-16在6:59
ProgramData目录可能隐藏在文件浏览器中。我以为它不存在,直到我将设置更改为显示“隐藏文件”。
–WestAce
18年2月21日在19:00
在较新的版本中,my.ini文件位于C:/ ProgramData / MySQL文件夹中。也不要使用Windows记事本对其进行编辑。使用Notepad ++或类似的方法,因为Notepad会更改文件编码,并且MySQL服务在启动时将无法解析文件。
– Mark1270287
20-2-4在2:57
我必须根据此答案将网络服务权限添加到文件夹。
– Nae
20 May 19 '21:32