在原始分区显然已满后,我将mysql数据库从一个硬盘分区转移到另一个硬盘分区。之后,我修改了my.cnf文件,以便数据目录指向新分区。这个新分区确实有额外的空间,但是当我尝试转储mysql数据库,甚至显示表的列时,我留下了以下错误:
Got error 28 from storage engine (1030)
我的df -h命令提供以下内容:
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/isw_jiajcifaa_SecureDatap1 880G 873G 0 100% /
tmpfs 12G 0 12G 0% /lib/init/rw
udev 12G 236K 12G 1% /dev
tmpfs 12G 140K 12G 1% /dev/shm
/dev/sdc1 917G 257G 615G 30% /data
我将文件从原始的/ var / lib / mysql移动到/ data / mysql并更改了my.cnf,如下所示:
user = mysql
pid-file = /data/mysql/mysqld.pid
socket = /data/mysql/mysqld.sock
port = 3306
basedir = /usr
datadir = /data/mysql
tmpdir = /tmp
有没有人知道错误?
答案 0 :(得分:2)
问题不在于数据库的位置,我将其移动到正确的分区,而是MYSQL用于传输数据的套接字。套接字在my.cnf和debian.cnf(对于Ubuntu)中定义,并且由于分区已满,绝对没有数据可以从MYSQL中读取。我还必须更改my.cnf中的临时目录。