今天資料庫表修改表結構,需要新增一列:
alter table `***x_learn` add column `learn_stage_code` varchar(32) null default '99' comment '學段' after `qualified_rate`;
結果一直報錯:
error 1114 (hy000) at line 303: the table '***x_learn' is full
剛開始以為可能硬碟空間不夠,df -h 查顯示正常,所有分割槽都有空閒。
看了網上一些文章,說是 max_heap_table_size
和 max_heap_table_size
預設太小了,需要調大。不過檢視該錶資料量並不大,ibd資料檔案才占用了12m。我的資料庫配置檔案my.cnf引數 max_heap_table_size
和 max_heap_table_size
為64m,認為成功的可能性不大。抱著試一試的態度
將這兩個引數 max_heap_table_size
和 max_heap_table_size
都由原來的64m增大為256m,第一次sql命令列直接修改全域性變數未成功,第二次重啟資料庫服務,結果執行sql仍然報錯。
檢視錯誤日誌顯示也依然如舊:
2015-01-13 10:01:48 7f91f01df700 innodb: warning: cannot create table `***x`.`#sql-2ea1_2388c` because tablespace full
150113 10:01:48 [warning] mysqld: the table '#sql-2ea1_2388c' is full
再次修改引數 big_tables
為on仍未解決。
最後將innodb_data_file_path引數新增了乙個引數選項autoextend由原來的 innodb_data_file_path = ibdata:16m 修改為 innodb_data_file_path = ibdata:16m:autoextend,重啟資料庫服務重新執行sql語句終於通過。
MariaDB MySQL 修改表結構報表空間滿
今天資料庫表修改表結構,需要新增一列 alter table x learn add column learn stage code varchar 32 null default 99 comment 學段 after qualified rate 結果一直報錯 error 1114 hy000 ...
關於mariadb(mysql)的授權
授權之前必須建立使用者才能授權 create user 使用者 主機或者 所有主機 identified by 密碼 create user root identified by 123qwe grant all on to 已有的使用者 主機 identified by 密碼 grant all ...
mariadb mysql的綠色安裝
zip安裝mysql官方文件 mariadb server官方文件 開啟cmd並進入到剛才解壓後的bin目錄,執行mysql install db.exe程式生產data目錄。在bin目錄下執行mysqld console命令啟動資料庫 console是將詳細資訊輸出到螢幕上,可以不加此引數 如果出...