2011-08-26 52 views
7

Tôi vừa nâng cấp Dung lượng RDS của mình từ 10GB lên 20GB và sau một vài ngày RDS cho biết Bộ nhớ đã đầy.RDS Bộ nhớ cơ sở dữ liệu hết dung lượng

Chạy truy vấn này trong MySQL Workbench so với cùng DB nói kích thước DB là 43MB

SELECT table_schema "database_name", 
sum(data_length + index_length)/1024/
1024 "Data Base Size in MB", 
sum(data_free)/ 1024/1024 "Free Space in MB" 
FROM information_schema.TABLES 
GROUP BY table_schema ; 

Vậy là có một cái gì đó đang xảy ra với các bản ghi mà MySQL tạo hoặc sao lưu vv mà có thể lấp đầy không gian lưu trữ của tôi trên các máy chủ sản xuất.

Vui lòng trợ giúp.

Trả lời

0

Có một số loại nhật ký trong mysql. Nhìn vào http://dev.mysql.com/doc/refman/5.1/en/server-logs.html. Nhưng tôi khuyên bạn nên xem nhật ký truy vấn chậm. Nếu bạn có nhiều truy vấn chậm, nhật ký của bạn sẽ tăng nhanh. Cũng chọn tùy chọn --log-queries-not-using-indexes. Có thể bạn đăng nhập tất cả các truy vấn của bạn mà không có chỉ mục.

+0

Làm thế nào để truy cập vào các bản ghi và xóa chúng để phục hồi không gian? và theo cách chúng tôi đang sử dụng MySQL 5.1.57, nhật ký truy vấn chậm là từ 5.1.6 trở đi. – Aakash

+0

Tôi thấy rằng innodb_log_file_size = 134217728 và max_binlog_size = 134217728 có thể là vấn đề? – Aakash

+0

Có vẻ như đây là nguyên nhân gây ra vấn đề của bạn. –

5

Bảng mysql.slow_log có thể chiếm rất nhiều không gian.
Bạn có thể loại bỏ các bản ghi chậm bằng cách thực hiện sql sau:

CALL mysql.rds_rotate_slow_log 
+0

Tuy nhiên, Amazon tuyên bố rằng ["Nhật ký truy vấn chậm, nhật ký lỗi và kích thước tệp nhật ký chung bị hạn chế không quá 2% dung lượng lưu trữ được phân bổ cho một cá thể DB."] (Http: // docs. aws.amazon.com/AmazonRDS/latest/UserGuide/USER_LogAccess.Concepts.MySQL.html) - Vậy làm cách nào để kích thước tệp nhật ký của một db 43MB đạt 20GB? ... – Ioanna

Các vấn đề liên quan