Supercharging Oracle Analysis with SQL*Plus and Lnav
The terminal flickers. You type a command. Data roars back in tight, brutal rows. This is where Lnav meets SQL*Plus, and speed matters more than ceremony.
Lnav is a powerful log file navigator that lets you query logs with SQL. SQL*Plus is Oracle’s classic command-line tool for running SQL against a database. Together, they can supercharge analysis by combining structured queries with raw text inspection. You can pivot between a live Oracle session in SQL*Plus and log-slicing in Lnav without losing context.
Use SQL*Plus to connect directly to your Oracle instance:
sqlplus user/password@host:port/service
From here, run your queries, gather output, and save to a file:
spool query.log
SELECT * FROM transactions WHERE status = 'FAILED';
spool off
Then launch Lnav on the saved log:
lnav query.log
Lnav will detect the file format and let you run SQL right against it:
SELECT COUNT(*) FROM log WHERE message LIKE '%ORA-%';
You can also combine multiple logs:
lnav sys.log query.log
This makes it possible to track error messages from Oracle right next to infrastructure logs. You can filter, group, and aggregate without touching a spreadsheet. For recurring workflows, use Lnav’s :save-view and :load-view commands to store queries.
For faster iteration, keep both tools open. Use SQL*Plus to adjust queries against the live database, and pipe the results into files that Lnav can slice and dice. This pattern cuts down latency between problem detection and root cause analysis.
The real advantage is control: SQL*Plus gives you direct access to the database; Lnav gives you instant, queryable insight into logs. Together, they strip away noise, leave you only the truth, and do it without adding complex middleware.
If you want to see how this workflow can be deployed instantly and scaled without friction, try it with hoop.dev and get it running live in minutes.