我开始学习操作来自 mysql 数据日志中的一些长数据列表,大约 300k 个条目,并且每天增加大约 1k 个条目,它在一周内工作正常然后突然我无法在D b。以下是我收到的错误:
我可以选择查询,但是当我插入和更新时,我收到此错误:
#1030 - 从存储引擎得到错误 -1
当我尝试将引擎类型从 InnoDB 更改为 MyISAM 时,出现此错误:
#1025 - 将“./dbname/tablename”重命名为“./dbname/#sql2-500-37”时出错(错误号:-1
我可以创建新表
这些是我检查过的东西:
我的任何磁盘空间仍然超过 50%,我已经使用 df 进行了检查
MySQL 错误日志中的最后一行 (/var/log/mysql/error.log):
InnoDB:一个新的原始磁盘分区已初始化或 InnoDB:innodb_force_recovery 开启:我们不允许 InnoDB:用户对数据库的修改。关掉 InnoDB:mysqld 并编辑 my.cnf 以便替换 newraw InnoDB: with raw, and innodb_force_... 被删除。
尝试重新启动服务器和 mysql 服务
我还尝试将 MySQL 配置文件中的值加倍,但似乎没有帮助,这是我的配置文件 ( /etc/mysql/my.cnf)
[mysqld_safe]
socket = /var/run/mysqld/mysqld.sock
nice = 0
[mysqld]
user = mysql
pid-file = /var/run/mysqld/mysqld.pid
socket = /var/run/mysqld/mysqld.sock
port = 3306
basedir = /usr
datadir = /var/lib/mysql
tmpdir = /tmp
lc-messages-dir = /usr/share/mysql
skip-external-locking
bind-address = 127.0.0.1
key_buffer = 16M
max_allowed_packet = 16M
thread_stack = 192K
thread_cache_size = 8
myisam-recover = BACKUP
#max_connections = 100
#table_cache = 64
#thread_concurrency = 10
#
# * Query Cache Configuration
#
query_cache_limit = 1M
query_cache_size = 16M
expire_logs_days = 10 .cnf', otherwise they'll be ignored.
max_binlog_size = 100M
[mysqldump]
quick
quote-names
max_allowed_packet = 16M.cnf', otherwise they'll be ignored.
[mysqldump]
quick
quote-names
max_allowed_packet = 16M
[mysql]
#no-auto-rehash # faster start of mysql but no tab completition
[isamchk]
key_buffer = 16M
!includedir /etc/mysql/conf.d/
innodb_force_recovery = 0
Run Code Online (Sandbox Code Playgroud)我的服务器信息是:
Server: Localhost via UNIX socket
Server type: MySQL
Server version: 5.5.43-0ubuntu0.14.04.1 - (Ubuntu)
Protocol version: 10
User: sfere01@localhost
Server charset: UTF-8 Unicode (utf8)
Run Code Online (Sandbox Code Playgroud)
关于如何进一步排除故障和解决此类问题的任何其他提示?我还应该检查或错过哪些其他事项?
您会在错误中注意到此消息
InnoDB:innodb_force_recovery 开启:我们不允许 InnoDB:用户修改数据库。关掉
所以请从 my.cnf 中删除 innodb_force_recovery 选项
| 归档时间: |
|
| 查看次数: |
21739 次 |
| 最近记录: |