# 資料庫常見問題:無法取得查詢 Log
在 Laravel 4 為了要確定下的 SQL 語法有符合我們預期,我們常常在做完資料庫查詢後,使用 `DB::getQueryLog();` 去取得做資料庫查詢的 Qeury Log,但因為 Laravel 會把這些 Log 都記錄在記憶體中,如果做了大量的新增的查詢,記憶體會使用過多可能會造成系統 Crash。
所以 Laravel 5 預設把記錄 Query Log 的機制關閉,若需要做 Query Debug,需要自行打開 Qeury Log 功能
~~~
<?php
// 啟用 Query Log 功能
DB::connection()->enableQueryLog();
~~~
這樣我們就可以使用 `DB::getQueryLog();` 去取得做資料庫查詢的 Qeury Log 摟!!要得到執行過的查詢紀錄陣列,你可以使用 getQueryLog 方法:
~~~
<?php
// 取得資料庫查詢的 Qeury Log
$queries = DB::getQueryLog();
var_dump($queries);
~~~
### 參考資料
- [資料庫使用基礎 查詢日誌記錄 - Laravel.tw](http://laravel.tw/docs/5.0/database#query-logging)
- [How to get the query executed in Laravel 5 ? DB::getQueryLog returning empty array](http://stackoverflow.com/questions/27753868/how-to-get-the-query-executed-in-laravel-5-dbgetquerylog-returning-empty-arr)
- 介紹
- 環境
- .env 檔案
- 資料庫
- Migration (遷移)
- Eloquent Model (模型)
- 設定
- 關聯
- 魔術函式
- 使用 Eloquent
- 常見問題
- 無法取得查詢 Log
- 使用大量資料的方式新增時無法新增
- 使用中繼模型繼承 Eloquent 模型造成無法使用大量資料新增
- PostgreSQL
- 安裝 PostgreSQL ODBC driver
- HTTP
- 請求
- 中介層 (Middleware)
- 視圖 (View)
- 服務
- 認證登入(Auth)
- 郵件(Mail)
- 使用 Gmail 寄信
- 使用 Mailgun 寄信
- 隊列(Queue)
- database
- 非同步(async)
- 輔助方法 (Helpers)
- 自定義輔助方法
- 單元測試 (Unit Test)
- Post CSRF 錯誤
- 錯誤與日誌
- 在單元測試顯示例外
- 日誌記錄層級
- 日誌巨集
- 加密
- 雜湊
- Elixir
- 使用 Elixir 合併 CSS 與 JS
- 設計模式
- 服務容器
- PSR
- Model 模型
- 學習資源
- 套件
- Debug
- Artisan tail
- 工具
- Carbon
- 設計模式
- 其他常見問題
- Call to undefined method getCachedCompilePath()
- 變更專案目錄名稱導致 View 無法讀取
- Laravel 5.1 目錄結構異動
- 學習資源
- 官方
- 社群
- 會議議程
- 工作
- 文件
- 文章
- 套件
- 服務工具
- 教學影片
- 教學網站
- 編輯開發
- 主機
- 成功案例