在服务器之间发出移动数据库(找不到.frm文件)

时间:2013-10-01 15:28:34

标签: mysql

我在本地计算机上使用MAMP来创建一个带有mysql数据库的小站点。我将所有站点文件移到了服务器上。大。

我的数据库的名称是名册,它有一个名为users的表。我复制了'roster'文件夹,其中包含以下文件:

db.opt
users.frm
users.MYD
users.MYI

我将'roster'文件夹放在mysql目录中。我运行以下内容:

<?php
$db = mysql_connect("localhost","username","password") or die ('Fail message1');
mysql_select_db("roster") or die("Fail message2");
?>

没有错误。真棒。但是当我运行以下内容时:

$query = "SELECT last_name, first_name, u_name, skype_id, primary_location FROM users";

$result = mysql_query($query)or die('query error'.mysql_error());

然后我收到以下错误:

query errorCan't find file: './roster/users.frm' (errno: 13)

该文件应该是它的位置,对吧?我是否错误地移动了数据库?是什么赋予了?有什么想法吗?

2 个答案:

答案 0 :(得分:3)

复制文件不是传输数据库的正确方法(在许多情况下可能工作,但有很多事情需要处理,需要有经验的DB /系统管理员才能这样做)。

而是dump your database and reimport目标服务器上的转储。

答案 1 :(得分:0)

结束了权限问题。将每个文件的组和用户更改为mysql并且它有效!