SAVEPOINT、ROLLBACK TO SAVEPOINT および RELEASE SAVEPOINT ステートメント
SAVEPOINT、ROLLBACK TO SAVEPOINT および RELEASE SAVEPOINT ステートメント
MySQL Server は異なる SQL モードで動作でき、sql_mode システム変数の値に応じて異なるクライアントにこれらの異なるモードを適用できます。 DBA はサイトサーバーの動作要件に一致するグローバル SQL モードを設定でき、各アプリケーションはアプリケーションのセッション SQL モードをアプリケーション独自の要件に設定できます。 モードは MySQL がサポートする SQL 構文と、MySQL が実行するデータ検証に影響します。 これにより、MySQL をさまざまな環境で使用したり、MySQL をほかのデータベースサーバーと一緒に使用したりすることが、さらに容易になります。 MySQL のサーバー SQL モードについてのよくある質問に対する回答は、セクションA.3「MySQL 8.0 FAQ: サーバー SQL モード」を参照してください。 InnoDB テーブルを
データのクエリーを実行してから、同じトランザクション内で関連データを挿入または更新する場合は、通常の SELECT ステートメントで十分な保護が提供されません。 ほかのトランザクションは、クエリーが実行されたばかりの同じ行を更新または削除できます。 InnoDB では、追加の安全性が提供される 2 つのタイプのロック読み取りがサポートされています。 SELECT ... FOR SHARE 読み取られる行に共有モードロックを設定します。 ほかのセッションもその行を読み取ることができますが、トランザクションがコミットするまで変更することはできません。 これらの行のいずれかがコミットされていない別のトランザクションによって変更された場合、クエリーはそのトランザクションが終了するまで待機してから、最新の値を使用します。 SELECT ... FOR SHARE は SELECT ... LOCK
SAVEPOINT、ROLLBACK TO SAVEPOINT および RELEASE SAVEPOINT ステートメント
状況によっては、MySQL の複数インスタンスを単一マシン上で実行する場合もあります。 既存の本番設定をそのままにして、新しい MySQL リリースをテストすることもできます。 または、ユーザーが自分で管理する異なる mysqld サーバーへのアクセス権を別々のユーザーに与える場合もあります。 (たとえば、ユーザーは独立した MySQL インストールを異なるカスタマ用に提供するインターネットサービスプロバイダである場合もあります。) インスタンスごとに異なる MySQL Server バイナリを使用したり、複数のインスタンスに対して同じバイナリを使用したり、この 2 つの方法を組み合わせたりすることが可能です。 たとえば、MySQL 5.7 と MySQL 8.0 からそれぞれサーバーを実行し、異なるバージョンによって所定のワークロードがどのように処理されるかを確認することもできます。 ま
次に、日付関数の使用例を示します。 次のクエリーは、過去 30 日以内の date_col 値を含むすべての行を選択します。 mysql> SELECT something FROM tbl_name -> WHERE DATE_SUB(CURDATE(),INTERVAL 30 DAY) <= date_col; このクエリーは、将来の日付を持つ行も選択します。 通常、日付値が要求される関数では、日付時間値が受け入れられ、時間の部分は無視されます。 通常、時間値が要求される関数では、日付時間値が受け入れられ、日付の部分は無視されます。 現在の日付または時間をそれぞれ返す関数は、クエリー実行の開始時にクエリーごとに 1 回だけ評価されます。 つまり、NOW() などの関数が単一クエリー内で複数回参照されても、常に同じ結果が生成されます。 (設計上、単一クエリーにはストアドプログラム (スト
MySQL サーバーへの接続を試行したときに問題が発生した場合に問題を修正するために実行できる一連のアクションについて、次の項目で説明します。 サーバーが実行中であることを確認します。そうでない場合、クライアントは接続できません。たとえば、サーバーに接続しようとして次のいずれかのようなメッセージで失敗した場合、サーバーが実行中でないことが 1 つの原因であることがあります。 shell> mysql ERROR 2003: Can't connect to MySQL server on 'host_name' (111) shell> mysql ERROR 2002: Can't connect to local MySQL server through socket '/tmp/mysql.sock' (111) サーバーは実行しているが、サーバーが待機しているのと異なる TCP/I
mysqladmin は管理操作を実行するためのクライアントです。 サーバーの構成や現在のステータスの確認、データベースの作成および削除、およびその他の用途に使用できます。 mysqladmin は次のように起動します。 shell> mysqladmin [options] command [command-arg] [command [command-arg]] ... mysqladmin は次のコマンドをサポートします。 コマンドの中にはコマンド名のあとに引数を取るものもあります。 create db_name db_name という名前の新しいデータベースを作成します。 debug MySQL 8.0.20 より前は、デバッグ情報をエラーログに書き込むようにサーバーに指示していました。 接続されたユーザーは SUPER 権限を持っている必要があります。 この情報の形式と内容は変更
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く