所以我不小心格式化了硬盘并重新安装了Windows,忘了备份我在MySQL服务器上的重要数据库。我正在尝试使用某些软件来挽救文件,但我不知道该寻找什么。
文件存储的路径是什么,命名的文件是什么(我应该查找哪种命名约定或文件扩展名)?
我相信我的服务器正在使用MyISAM,但并非100%确定。
任何建议都将不胜感激!
答案 0 :(得分:71)
您可以查看my.ini
文件以查看数据文件夹的位置。
通常有一个文件夹{mysqlDirectory} / data
MySQL数据存储:
Commands.frm
Commands.myd
Commands.myi
* .frm文件包含表定义。您的* .myi文件是MyISAM索引文件。您的* .myd文件包含表数据。
修改/更新即可。 由于问题中显示的兴趣,这里有更多信息,也可以在评论中找到。
在Windows 8.1中,MySQL数据库(默认情况下)存储在此处:C:\ProgramData\MySQL\MySQL Server 5.6\data
文件夹C:\ ProgramData是一个隐藏文件夹,因此您必须将其键入Windows资源管理器地址才能到达目的地。在该数据文件夹中,数据库名为/{database_name_folder}/{database_tables_and_files}
。
例如,
C:\ProgramData\MySQL\MySQL Server 5.6\data\mydatabase\mytable.frm
C:\ProgramData\MySQL\MySQL Server 5.6\data\mydatabase\mytable.ibd
感谢@ marty-mcgee获取此内容
答案 1 :(得分:37)
在Windows 7中,MySQL数据库存储在
C:\ ProgramData \ MySQL \ MySQL Server 5.6 \ data
注意:这是隐藏文件夹。我的例子是MySQL Server 5.6版;如果不同,请根据您的版本更改文件夹名称。
知道这个位置很方便,因为有时MySQL Workbench无法删除模式(或导入数据库)。这主要是由于dbben文件夹中存在由于某种原因而无法在Workbench的早期过程中删除的文件。使用Windows资源管理器删除文件并再试一次(删除,导入),您的问题应该得到解决。
希望这会有所帮助:)
答案 2 :(得分:11)
我在root中有一个默认的my-default.ini文件,并且有一个服务器配置:
[mysqld]
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
所以这并没有告诉我路径。
最好的方法是连接数据库并运行此查询:
SHOW VARIABLES WHERE Variable_Name LIKE "%dir" ;
以下是结果:
basedir C:\Program Files (x86)\MySQL\MySQL Server 5.6\
character_sets_dir C:\Program Files (x86)\MySQL\MySQL Server 5.6\share\charsets\
datadir C:\ProgramData\MySQL\MySQL Server 5.6\Data\
innodb_data_home_dir
innodb_log_group_home_dir .\
lc_messages_dir C:\Program Files (x86)\MySQL\MySQL Server 5.6\share\
plugin_dir C:\Program Files (x86)\MySQL\MySQL Server 5.6\lib\plugin\
slave_load_tmpdir C:\Windows\SERVIC~2\NETWOR~1\AppData\Local\Temp
tmpdir C:\Windows\SERVIC~2\NETWOR~1\AppData\Local\Temp
如果要查看为数据库配置的所有参数,请执行以下操作:
SHOW VARIABLES;
storage_engine变量将告诉您是否正在使用InnoDb或MyISAM。
答案 3 :(得分:6)
对于Windows 7: c:\ users \ all users \ MySql \ MySql Server x.x \ Data \
其中x.x是计算机中安装的sql server的版本号。
卡斯
答案 4 :(得分:3)
那应该是您的{安装路径} \数据,例如C:\apps\wamp\bin\mysql\mysql5.5.8\data\{databasename}
答案 5 :(得分:3)
它通常位于下面指定的文件夹中,但ProgramData通常是隐藏文件夹。要显示它,请转到控制面板搜索"文件夹"然后在高级设置下勾选显示隐藏文件并单击应用。 C:/ ProgramData / MySQL / MySQL Server 5.5 / Data /
答案 6 :(得分:2)
只需在本地分区上执行Windows搜索* .myi文件即可。周期。
我怀疑,它们位于程序文件文件夹中,而不像大多数其他数据库管理器那样使用正确的仅数据文件夹。
为什么要搜索my.ini文件,用编辑器打开它,查找路径字符串,确保不改变配置文件(!),然后进行第二次搜索?除了练习触摸打字之外,没有额外的好处也很复杂。
答案 7 :(得分:2)
我刚刚在Windows7上安装了MySQL 5.7。数据库文件位于以下目录中,该目录是隐藏的目录:
C:\ProgramData\MySQL\MySQL Server 5.7\Data
my.ini
文件位于同一根:C:\ProgramData\MySQL\MySQL Server 5.7
答案 8 :(得分:1)
是
" .MYD"数据库self和
" .TMD"时态档案。
但有时我也会看到" .sql"。
这取决于您的设置和/或导出方法。
答案 9 :(得分:0)
1)找到存储在MySQL安装文件夹中的my.ini。
例如,
C:\Program Files\MySQL\MySQL Server 5.1\my.ini
2)用我们喜欢的文本编辑器打开“my.ini”。
#Path to installation directory. All paths are usually resolved relative to this.
basedir="C:/Program Files/MySQL/MySQL Server 5.1/"
#Path to the database root/"
datadir="C:/Documents and Settings/All Users/Application Data/MySQL/MySQL Server 5.1/Data
找到“datadir”,这是MySQL在Windows中存储数据的地方。
答案 10 :(得分:0)
C:\ Program Files \ MySQL \ MySQL Workbench 6.3 CE \ sys
将URL
粘贴到窗口文件中,
并从此目录中获取Tables, Procedures, Functions
答案 11 :(得分:0)
MYSQL 8.0:
在磁盘中搜索my.ini
,我们将找到以下文件夹:
C:\ ProgramData \ MySQL \ MySQL Server 8.0
是ProgramData
,而不是Program file
数据位于子文件夹\Data
中。
每个database
都有一个文件夹,每个table
是一个文件,每个index
是1个以上的文件。
答案 12 :(得分:0)
如果使用的是安装了Xampp服务器的Win10,则可以在 C:\ xampp \ mysql \ data
中找到数据文件夹。在data文件夹中,每个数据库都有其自己的文件夹,该文件夹又包含.frm,.myi和.myd文件,这些文件代表数据库中的单个表。
例如,如果您创建了一个名为myschool的数据库,并且在数据库内部,您有三个表,其名称为:
然后,您将拥有Nursery表:Nursery.frm,turryry.myi和Nursery.myd。主表和辅助表也是如此。因此,在这里提到的I中,您将在名为 myschool 的数据库文件夹中总共包含9个文件。
然后您可以复制数据库文件夹并在新的mysql安装数据文件夹中使用它。
我希望这会有所帮助。
最诚挚的问候。