我不得不重建我的服务器并试图将数据库文件从旧驱动器复制到 /var/lib/mysql/。我已经重新启动了 apache 并运行了“show databases”,这列出了所有的数据库。我已经输入了这些数据库之一“joomla”并运行“show tables”,这会显示我期望的所有表。
但是,尝试运行诸如 'SELECT * from bsf_session' 之类的查询会出现错误:
ERROR 1146 (42S02): Table 'joomla.bsf_sessions' doesn't exist
Run Code Online (Sandbox Code Playgroud)
检查我得到的表:
mysql> check table bsf_seminar;
+--------------------+-------+----------+---------------------------------------------------------+
| Table | Op | Msg_type | Msg_text |
+--------------------+-------+----------+---------------------------------------------------------+
| joomla.bsf_seminar | check | Error | Can't find file: './joomla/bsf_seminar.frm' (errno: 13) |
| joomla.bsf_seminar | check | error | Corrupt |
+--------------------+-------+----------+---------------------------------------------------------+
2 rows in set (0.00 sec)
Run Code Online (Sandbox Code Playgroud)
当我复制文件时,我更改了权限以匹配 mysql 表的权限,但是我无法更改所有权,文件当前看起来像这样(ls -g):
-rw-rw---- 1 root 8842 2012-02-23 09:54 bsf_session.frm
-rw-rw---- 1 root 271012 …
Run Code Online (Sandbox Code Playgroud)