Mediawiki có một bảng trong 'văn bản' của cơ sở dữ liệu chứa nội dung trang. Nó được lưu dưới dạng tệp [BLOB]. Tôi muốn chạy truy vấn để tìm kiếm thông qua tất cả văn bản trên trang web để xem trang nào chứa một 'chuỗi' nhất định. Làm cách nào để chạy truy vấn để tìm kiếm các tệp [blob]?Cách chạy truy vấn để tìm chuỗi trong tệp blob?
Trả lời
Văn bản đánh dấu Mediawiki được lưu trữ trong trường old_text
, là loại mediumblob. Bạn có thể truy vấn nó giống như bất kỳ trường dựa trên văn bản nào khác. MySQL sẽ đúc chuỗi của bạn thành nhị phân cho truy vấn. Lưu ý rằng đây là tìm kiếm phân biệt chữ hoa chữ thường!
select old_id from text where old_text like "%string%";
Nếu bạn cần trường vô cảm thì bạn cần phải áp dụng một cách phù hợp character set với một case-insensitive chiếu đến cột:
SELECT old_id from text where CONVERT(old_text USING latin1) like '%STRing%';
Hãy nhận biết rằng nếu bảng của bạn là không nhỏ các truy vấn này sẽ mất nhiều thời gian.
Theo bảng văn bản mediawiki documentation chỉ lưu trữ văn bản cho bản sửa đổi. Do đó để truy cập vào văn bản hoàn chỉnh, tất cả các sửa đổi tương ứng với một trang cần phải được xử lý. Tốt hơn là sử dụng lệnh gọi API tới mediawiki search engine và xử lý kết quả hơn tìm kiếm bằng truy vấn SQL.
- 1. Tệp API Google Drive.Lỗi truy vấn chuỗi
- 2. Làm cách nào để tính tổng chạy của chuỗi int trong truy vấn LINQ?
- 3. Cách chuyển% trong chuỗi truy vấn URL?
- 4. Làm cách nào để gửi URL có Chuỗi truy vấn dưới dạng Chuỗi truy vấn
- 5. cách truy cập chuỗi truy vấn trong ASP.Net MVC View?
- 6. BLOB thành chuỗi, SQL Server
- 7. Làm cách nào để chạy truy vấn ldap bằng R?
- 8. OData Linq để truy vấn chuỗi
- 9. Cách tốt nhất để phân tích chuỗi truy vấn URL
- 10. Cách tìm chuỗi trong tệp văn bản?
- 11. Truy vấn để tìm khóa ngoài
- 12. Cách đọc nội dung của tệp .sql thành tập lệnh R để chạy truy vấn?
- 13. chuỗi truy vấn iframe
- 14. Tải xuống tệp Azure Blob trong MVC3
- 15. chuỗi :: truy vấn c_str
- 16. Nhiều truy vấn không chạy trong FMDB
- 17. chuỗi truy vấn trong url $ nguồn
- 18. Truy vấn chuỗi truy vấn Elasticsearch không bằng?
- 19. Cách chạy truy vấn với regexp trong Android
- 20. http.get và chuỗi truy vấn trong Node.js
- 21. Tìm truy vấn từ query_id trong mysql
- 22. "." trong chuỗi truy vấn rối tung lên
- 23. Cách sử dụng Chuỗi truy vấn với $ location.path() trong AngularJS
- 24. cách thay đổi datetime thành chuỗi trong truy vấn sqlalchemy?
- 25. Tìm kiếm tất cả các tệp trong dự án chứa văn bản 'chuỗi truy vấn' trong Eclipse
- 26. Cách xóa phần chuỗi truy vấn khỏi Request.UrlReferrer.AbsoluteUri trong C#
- 27. Cách so sánh các chuỗi trong Truy vấn LINQ
- 28. cách chuyển chuỗi truy vấn trong các tuyến đường góc?
- 29. Chuỗi truy vấn trong lệnh SQL C#
- 30. Thao tác chuỗi truy vấn trong Java
Nếu tôi nhớ chính xác, MediaWiki có thể nén nội dung của bảng 'văn bản'. Bạn có chắc đó không phải là trường hợp của bạn? – svick
Nó nói trong tài liệu rằng cột 'old_flags' có thể chứa tệp gzip nhưng nó cũng là tệp blob và khi tôi tải xuống, tôi không thể thấy tệp gzip. Tôi có một lượng lớn nội dung trên wiki của mình, tôi muốn tìm kiếm mặc dù tất cả nội dung, tôi không thể tải xuống và giải nén từng trang. Bất kỳ ý tưởng làm thế nào để làm điều này? – LTech