上級者向け

Shell Script

【Shell Script】実践:ファイルを自動でバックアップするシェルスクリプトを作る

こんにちは、かつコーチです。シェル関数・sed/awk・set -eによるエラーハンドリング・cronによる定期実行と、ここまで一通りの部品を解説してきました。今回はシェルスクリプト編の最終回として、これらの部品を組み合わせ、実際に使える自...
Shell Script

【Shell Script】set -eなどエラーハンドリングの基本:シェルスクリプトを安全に止める書き方

こんにちは、かつコーチです。sed・awkでのテキスト処理に続いて、今回はエラーハンドリングを扱います。前提知識ありきで、set -eを中心に、実務で必ずと言っていいほど踏む落とし穴まで踏み込んで解説します。エラーハンドリングとは:前提の整...
Shell Script

【Shell Script】sed・awkと連携した文字列操作の基本:シェルスクリプトでのテキスト処理

こんにちは、かつコーチです。シェル関数まで押さえたところで、ここからは実践Tips編に入ります。シェルスクリプトの実務でログ解析や設定ファイルの一括編集をしていると、grepだけでは物足りず、sedとawkの出番が必ず来ます。前提知識ありき...
ネットワーク

【ネットワーク】ネットワークトラブルシューティングの基本の流れ

こんにちは、かつコーチです。ネットワーク基礎編の最終回です。IPアドレス、DNS、HTTP、TCP/UDP、OSI参照モデル、そしてping・tracerouteと積み上げてきた知識を、実際の障害対応の流れに落とし込みます。上級者向けの内容...
SQL

【SQL】トランザクション分離レベルとダーティリード・ファントムリード

こんにちは、かつコーチです。前回はACID特性の4つの性質を解説し、その中のIsolation(独立性)には「強さ」の段階があるという話をしました。今回はその独立性を段階的に設定するトランザクション分離レベルを扱います。分離レベルの違いによ...
SQL

【SQL】EXPLAINで実行計画を読む基本

こんにちは、かつコーチです。前回はインデックスがなぜ検索を速くするのかを解説しました。インデックスを作成したら、それが本当にクエリで使われているかを確認する必要があります。感覚や思い込みではなく、データベースに直接聞く方法がEXPLAINで...
SQL

【SQL】正規化の考え方(第1〜第3正規形)

こんにちは、かつコーチです。これまでCREATE TABLE、データ型、主キー・外部キーとテーブル設計の要素技術を見てきました。今回はそれらを踏まえて、テーブル設計の理論的な支柱である正規化を扱います。この記事は前提知識ありきの上級者向け内...
SQL

【SQL】相関サブクエリの仕組みと使いどころ|非相関サブクエリとの違いを理解する

こんにちは、かつコーチです。前回の記事「サブクエリの基本」では、外側のクエリと独立して実行できる非相関サブクエリを扱いました。今回は、外側のクエリの各行を参照しながら繰り返し実行される相関サブクエリ(correlated subquery)...
SQL

【SQL】自己結合(SELF JOIN)の使い方

こんにちは、かつコーチです。「社員テーブルの中で、上司と部下の関係を一覧にしたい」「同じ商品カテゴリの中で、価格が近い商品同士を比較したい」。こうした「同じテーブルの中にある行同士を比較・結合したい」というケースで使うのが自己結合(SELF...
Linux

【Linux】systemdの基本:サービスを管理する仕組みをLinux上級者向けに解説

こんにちは、かつコーチです。ここまでps・top・kill・シグナルとプロセス管理の基本を見てきましたが、実際の本番サーバーでnginxやMySQLがどのように起動・停止・再起動されているか、意識したことはあるでしょうか。その答えがsyst...