ホームページ >バックエンド開発 >PHPチュートリアル >コメントが私の最大のモチベーションです~完全な MySQL の基礎 (ストレージ エンジンとグラフィカル管理ツール)、mysql の基礎_PHP チュートリアル
こんにちは
今日ログインしたらコメントが3件ありました~~さあ!
今週の計画は実際には達成には程遠く、来週もやるべきことがまだたくさんあります。 。 。それで。 。 。週末楽しんでくださいね〜
今日は MySQL の基本的な知識を完了しようとしています。初心者は専門家になれるでしょうか?
1.MySQL
-----ストレージ エンジン (はじめに)-----
----はじめに
---直感的な例
mysql> SHOW CREATE TABLE テスト;
+------+-------------------------------- -------------------------------------------------- -------------------------------------------------- -------------------------------------------------- ----------+
| テーブルの作成 |
+------+--------------------- -------------------------------------------------- -------------------------------------------------- -------------------------------------------------- - ------------------+
| CREATE TABLE `test` (
`id` tinyint(3) unsigned NOT NULL AUTO_INCREMENT,
`username` varchar(20) ) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=9 DEFAULT CHARSET=latin1 |
+------+--------------- -------------------------------------------------- -------------------------------------------------- -------------------------------------------------- - -----------------------+
セット内 1 行 (0.04 秒)
ここでの ENGINE=InnoDB はストレージ エンジンです
---
MySQL は、さまざまなテクノロジーを使用してデータをファイル/メモリに保存できます。このテクノロジーはストレージ エンジンです (つまり、ストレージ エンジンはテクノロジー、ストレージ テクノロジーです)。
ストレージメカニズム、インデックス作成技術、ロックレベルの違いにより、さまざまなエンジンの機能が異なりますテーブルタイプとも呼ばれます
---
MySQL は主に
をサポートします
MyISAM、InnoDB、メモリ、CSV、アーカイブ---ナレッジポイントの同時処理
複数の接続がレコードを変更するときにデータの一貫性と整合性を確保します
たとえば、同じレコードに対する複数のユーザーのリクエストを処理する場合 - 一般的に使用されるのは、共有ロック (読み取りロック) (複数のユーザーが同じリソースを読み取ることができ、読み取りプロセス中にデータは変更されません)、排他的ロック (書き込みロック) です。 ) (いつでも 1 人のユーザーのみがリソースに書き込むことができ、ロックを書き込むと他の読み取りロックまたは書き込みロック操作がブロックされます)
ロックするときは、最も正しいオブジェクトのみに焦点を当てるように注意してください (オブジェクトが大きすぎたり小さすぎたりすることはできません) - テーブル ロック (オーバーヘッドが最も少ないロック戦略)、行ロック (最もコストがかかる)
----ナレッジポイントトランザクション処理
データベースの整合性を確保するために使用されます
を満たす: ACID (原子性、一貫性、分離性、耐久性)
---ナレッジポイント-外部キー
データの一貫性を確保するための戦略(さまざまなキーについて前述)
----ナレッジポイントインデックス
データテーブル内の1つ以上の列の値をソートするための構造体(ディレクトリ関数に似ています)
高速クエリを有効にする
----各種エンジンの特徴
MyISAM: 256TB、インデックス、テーブルロック、データ圧縮をサポート - トランザクションがあまりない状況に適しています
InnoDB: 64TB、トランザクション セキュリティをサポート (これがこのエンジンがよく選ばれる理由です)、インデックス、行ロック、外部キーをサポート (これもこのエンジンのみがサポートしています) - 背が高くてエレガント
メモリ: ストレージ制限あり(メモリサイズによって決定)、インデックス、テーブルロックをサポート
アーカイブ: ストレージ制限なし、インデックス、テーブルロック、データ圧縮をサポート
インデックスにはさまざまな種類があるので、それらについて説明しましょう。
その他: CSV はインデックス作成をサポートしていません。ブラックホールはデータ複製のリレーとして使用されます (読み取り後の書き込みと同様)。
最初の 2 つは最もよく使用されます。
---ストレージ エンジンをセットアップする
---my.ini の変更
デフォルトストレージエンジン=...
---CREATE TABLE テーブル(
...
一例は以下の通りです
mysql> CREATE TABLE tp1(
-> s1 VARCHAR(20) -> )ENGINE=MyISAM;
クエリ OK、影響を受ける行は 0 (0.10 秒)
mysql>SHOW CREATE TABLE tp1;
| テーブルの作成 |
+------+---------- - ------------------------------------------------- - ----------------------+
| CREATE TABLE `tp1` (
`s1` varchar(20) デフォルト NULL
) ENGINE=MyISAM デフォルト CHARSET =latin1 |
+------+------------------------------------- -------- -------------------------------------- -------- ------+
セット内 1 行 (0.00 秒)
mysql> ALTER TABLE tp1 ENGINE=InnoDB;
レコード: 0 重複: 0 警告: 0
mysql>SHOW CREATE TABLE tp1;
+-------+-------------------------------- -------------------------------------------------- -----------+
| テーブルの作成 |
+------+---------- -------------------------------------------------- -----------------------+
| CREATE TABLE `tp1` (
`s1` varchar(20) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET =latin1 |
+------+------------------------------------- ---------------------------------------------------- --------- ------+
セット内 1 行 (0.00 秒)
-----グラフィカル管理ツール-----
---PHPMyAdmin
私の場合はwamp統合環境なのでphpmyadminに直接ログインできます
通常、phpmyadmin 公式 Web サイトにアクセスして、自分のバージョンに対応する php のバージョンをダウンロードする必要があります
ダウンロードしてインストールした後、それを操作するにはWebページに移動する必要があります
結局のところ、それはサーバー側に配置されたものです。データベースやデータテーブル、データを視覚的に操作できるというのはあまり一般的ではないようですが、個人的にはコマンドを使うのが好きです。ただし、視覚化はエラーの発見などに便利です。それはまだ体験して理解する必要があります
。----ナビキャット
中国語版のクライアントがあります
----MySQL ワークベンチ
公式ウェブサイトから提供されるクライアント
詳しくは言いませんが、ネットで調べればわかります
2. アヤックス
-----はじめに-----
中国語名: 非同期JavaScriptおよびXML (非同期リクエスト、部分リフレッシュ)
ウェブページ全体を再読み込みすることなく、ページの一部を更新できる技術です
ウェブの風景を変えました
予備知識: CSS、HTML、JS
----同期と非同期
同期: (独自技術) クライアントがリクエストした後、サーバーが応答して処理結果を返します。クライアントはプロセス全体にわたって待機しています。同期とは、クライアントとサーバーが同時に処理することを意味します
。非同期: (例えば、登録情報を入力するときにメールアドレスを入力すると、すぐに入力ボックスの右側に緑色のチェックマークが表示されます) クライアントに変更があった場合、(どうやら) すぐにプロセッサーにリクエストを送信し、プロセッサー側が処理して結果を返します。このプロセス中、クライアントは引き続き他の操作 (クライアント側とサーバー側での非同期操作) を実行します。
技術的な違い: XMLHttpRequest オブジェクトの欠如 - バックエンドとサーバー間のデータ交換に使用されますプロセスの紹介: ページを実装して情報を表現する HTML&CSS + データの非同期交換を行う XHR + 動的な部分更新を実現するための DOM を操作する JavaScript
----XMLHttpRequest (XHR) オブジェクトの作成
XHR をインスタンス化します: var request=new XMLHttpRequest();
IE6 以前のブラウザに加えて、すべてのブラウザが XHR をサポートします
----HTTPリクエスト
http は、コンピューターがネットワークを介して通信するためのルール/プロトコルであり、ステートレス (状態を保持しない/メモリを持たない) プロトコルです。
http リクエストの手順: TCP 接続を確立 -> ブラウザがサーバーに「呼び出し」 -> サーバーの応答 -> サーバーの応答 -> 接続を閉じる
リクエストとレスポンスには独自の形式があります。詳細については、「コンピュータネットワーク」または類似の書籍を参照してください。GET/POST などについて知っていれば、一時的に続けることができます。
注: GET は URL を使用してデータを転送します。これはすべて表示され (クリアテキスト)、文字数制限があります。利点は、シンプルで安全であり、ブックマークなどとして保存できることです。応答後のブラウザーのステータス コードを理解する必要があります。主に最初のコードに注目してください。1xx、情報タイプは処理中であることを示し、3xx、リダイレクトはリクエストが失敗したことを示します。クライアントからのアクションが必要です。 4xx、クライアント エラーは、クライアントによって送信されたリクエストにエラーがあることを意味します (404 NOT FOUND など)。これは、リクエストで参照されているドキュメントが存在しないことを意味します。 Web プログラムをデバッグするために、覚えておいてください
http://www.bkjia.com/PHPjc/1071018.html
www.bkjia.com