使用
超過十年行業經驗,技術領先,服務至上的經營模式,全靠網絡和口碑獲得客戶,為自己降低成本,也就是為客戶降低成本。到目前業務范圍包括了:做網站、網站建設,成都網站推廣,成都網站優化,整體網絡托管,微信平臺小程序開發,微信開發,重慶App定制開發,同時也可以讓客戶的網站和網絡營銷和我們一樣獲得訂單和生意!
unbuffered
cursor
可以避免內存問題。
cursor
默認使用
buffered
模式。這種模式會把所有結果集返回并載入內存。如果結果集很大的話,內存會爆。
unbuffered
cursor
是每次只將下一行結果返回,內存占用很小。不過這種模式缺點很多,所以沒有作為默認的模式。
以MySQL 8.0 來說,通過查看 8.0 的官方文檔得知,8.0 的臨時表空間分為會話臨時表空間和全局臨時表空間,會話臨時表空間存儲用戶創建的臨時表和當 InnoDB 配置為磁盤內部臨時表的存儲引擎時由優化器創建的內部臨時表,當會話斷開連接時,其臨時表空間將被截斷并釋放回池中;也就是說,在 8.0 中有一個專門的會話臨時表空間,當會話被殺掉后,可以回收磁盤空間;而原來的 ibtmp1 是現在的全局臨時表空間,存放的是對用戶創建的臨時表進行更改的回滾段,在 5.7 中 ibtmp1 存放的是用戶創建的臨時表和磁盤內部臨時表;
也就是在 8.0 和 5.7 中 ibtmp1 的用途發生了變化,5.7 版本臨時表的數據存放在 ibtmp1 中,在 8.0 版本中臨時表的數據存放在會話臨時表空間,如果臨時表發生更改,更改的 undo 數據存放在 ibtmp1 中;
實驗驗證:將之前的查詢結果保存成臨時表,對應會話是 45 號,通過查看對應字典表,可知 45 號會話使用了 temp_8.ibt 這個表空間,通過把查詢保存成臨時表,可以用到會話臨時表空間,如下圖:
下一步殺掉 45 號會話,發現 temp_8.ibt 空間釋放了,變為了初始大小,狀態為非活動的,證明在 mysql8.0 中可以通過殺掉會話來釋放臨時表空間。
總結:在 mysql5.7 時,殺掉會話,臨時表會釋放,但是僅僅是在 ibtmp 文件里標記一下,空間是不會釋放回操作系統的。如果要釋放空間,需要重啟數據庫;在 mysql8.0 中可以通過殺掉會話來釋放臨時表空間。
操作系統:CentOS 6.2
現象:MySQL無法啟動
查找問題發現:存放mysql數據分區100%
[root@jinniu-test3 mysql]# df -h
文件系統 容量 已用 可用 已用%% 掛載點
/dev/sda2 49G 49G 20K 100% /
tmpfs 933M 0 933M 0% /dev/shm
/dev/sda1 194M 31M 153M 17% /boot
/dev/sda5 219G 701M 207G 1% /opt
檢查/etc/my.cnf,數據文件默認存放于/var/lib/mysql下
確認此文件夾確實過大
解決方案:轉移存放目錄,修改my.cnf或者軟連接回來
[root@-_- ~]# cp -Rp /var/lib/mysql /opt/ --帶權限拷貝整個目錄
修改/etc/my.cnf配置datadir=/opt/mysql指向新位置
重啟mysql發現無法啟動
[root@-_- ~]# service mysqld start
MySQL Daemon failed to start.
正在啟動 mysqld: [失敗]
檢查/var/log/mysqld.log文件最后
[root@-_- ~]# tail -20 /var/log/mysqld.log
...
130301 11:52:05 [Warning] Can't create test file /opt/mysql/-_-.lower-test
130301 11:52:05 [Warning] Can't create test file /opt/mysql/-_-.lower-test
...
網絡搜索問題得知是這臺機器啟用SElinux 安全策略引起的
使用命令可以解決
[root@-_- ~]# chcon -R -t mysqld_db_t /opt/mysql
實在不行,禁用SElinux
執行:setenforce 0
新聞標題:mysql空間滿了怎么弄,mysql剩余空間
當前URL:http://vcdvsql.cn/article28/heosjp.html
成都網站建設公司_創新互聯,為您提供移動網站建設、關鍵詞優化、網站導航、、電子商務、網頁設計公司
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯