mysql-データベース・インフラストラクチャ
データベースの基本的な考え方
データベースとは何ですか
データベースは、ウェアハウス内のデータを格納するために使用され、本質的には、最終的にはディスクデータがサーバに格納されます、サーバー側とクライアントベースのプログラムCSアーキテクチャのセットです。ユーザーに関連するすべての関連データが、見つけるための場所でなければなりません。学習データの格納方法の前に、次のとおりです。
1.リスト、辞書......というように、メモリ内のデータが、欠点は、停電の損失、速度の利点であります
2.ファイルが利点は、永久保存を達成することができる、等JSON、TXT .......として、格納され、欠点は遅いです。
なぜデータベースを使います
1.速度を上げます
2.ネットワーク上の異なるマシン上のデータにアクセスするには:マシンは満たすことができない場合は、私たちの未来のプログラムが異なるマシン上に分散してもよいし、各マシンのパフォーマンスと上限を持っている必要があり、私たちは一緒に仕事を複数のマシンを使用する必要がありますタスクを完了します。
- 分散型:異なるサービスを提供するために、各サーバー、時にはビジネス・プロセスは、複数のサーバを含むことができます。だから、コミュニケーション面倒と災害復旧クラスターもない良いではありませんが、カップリングは、低保守が容易です
- クラスター:サーバーが提供するすべてのサービスは、プラグイン可能な、普及しやすい、まったく同じ、災害復旧と強いです
3.ユーザー権限の管理
4.複数のクライアントの同時アクセス、データのセキュリティを確保。
分類データベース
リレーショナルデータベースは:データ、リレーショナルデータベース間の接続を使用して、リレーショナルデータベースにいる意味し、通常はテーブル構造あることができ、最初のステップは、テーブルの構造を決定することです。データベースは、私たちは、この関係を維持するのに役立ちます。記憶媒体として通常のディスク。一般的なリレーショナルデータベースです。
- MySQLの:最も人気のあるリレーショナルデータベース、フリーでオープンソース
- 場合SQLserver:Windowsプラットフォームでは、Microsoftの唯一の実行
- オラクル:最も強力なリレーショナルデータベース、主クラスタおよびユーザー管理では、優れた費用であります
- DB2:IBMの製品、主に企業ユーザーのために
非リレーショナルデータベース:あなたは、記憶媒体として通常のメモリのデータ間の関係を維持するために私たちを助けることができません。典型的には、K、Vキー形式でデータを格納します。
一般的に使用される非リレーショナルデータベースがある:MongoDBの(文書データベース、非リレーショナルデータベースの種類との間の非常に密接な関係)、Redisの、memcahe
データベースのキーコンセプト
データ(列):文字列内のファイル
レコード(行):データファイルの行は、レコードのセクションと呼ばれています
表(表):ファイル
ライブラリ(データベース):それはフォルダです
ヘッダは、テーブルデータの最初の行であり、フィールドが特定の型を持つ、フィールド名+フィールドは、フィールドタイプ、ストリング名メモリ、デジタル・ストレージ・パスワード、寄託日が誕生。
DBIMS:データベース管理システム(データベース・ソフトウェアを指します)
データベースサーバー:実行しているコンピュータDSMS
MySQLはプレリュードを使用しています
MySQLをインストールした後、すべての実行可能ファイルを格納するために使用されるビンのファイルがある、binファイルには、mysqld.exe
サーバプログラム、あるmysql.exe
クライアントプログラム。あなたは実行する必要がありますmysqld.exe
。データファイルが格納されたデータを配置するために使用されます。
あなたは、単に観光客のためのモードにダブルクリックする場合は、クライアントを実行すると、適切な操作は、次のような、ターミナル指定したユーザー名とパラメータでコマンドを入力している:mysqlの-h 127.0.0.1 -p 3306 -uroot -p
- -h:サーバーへの接続のホスト名、およびマシンが無視できる場合
- -p:MySQLのデフォルトのポート番号は3306であるポートを指定し、あなたが書き込むことはできません
- -u:ユーザー名を指定します。
- -p:パスワードを指定します(パスワードは直接通常の-p後に再度パスワードを入力し、プレーンテキストで表示されるので、パスワードは一般的に指定されていません。)
管理者端末のCMDとして実行します。
- mysqldをインストール#登録システムサービスは、登録後に自動的に起動するように設定することができ、次回は、独自のサーバーを開けないでください
- SCは、MySQL#削除サービスを削除します
- ネット開始のmysql#スタートサービス
- ストップサービスでnet stop mysqlのの#
- タスクリスト| FINDSTRのmysqld#はプロセスを表示
- taskkill -f / PID 18536#指定されたプロセスを閉じます
- taskkiii / F / PIDプロセスID
MySQLの5.6管理者パスワードの設定
あなたは、パスワードを知っています:
1. MySQLを修正する更新ステートメントを実行するためにログオンします
- mysql->ユーザ設定パスワード=パスワード(「123」)ここで、ホスト=「localhost」は、ユーザーが=「ルート」更新使用はmysql->を入力 - >フラッシュ権限を、MySQLや再起動されます(123注用に設定したパスワード)
2. mysqladminのを修正するための小さなツールを使用します
- mysqladminは-uroot -p123パスワード321(321はあなたの新しいパスワードを設定し、元のパスワードのための123の点に注意してください)
- mysqladminは-uroot -pパスワード123(パスワードなし、123を設定したパスワード)
警告メッセージは、後に正常に変更され報告されますWarning: Using a password on the command line interface can be insecure.
コマンド入力エラーが、以前のコマンドをキャンセルcは\を使用することができます場合は、キャンセルを意味cは
承認をスキップして(コードをクラック)を変更するためのパスワードを知っていないときは:
- 管理者端末として実行 - >でnet stop mysqlの(mysqlのストップサービス) - > mysqldを--skip-助成金・テーブル(オープニングサーバーを承認スキップ) - >ファイル名を指定して実行通常のターミナル - > MySQLの-uroot直接バック-p (ユーザに対応する管理者パスワードを変更する); - >は、使用のMySQL(MySQLデータベースへの移行) - >更新ユーザ設定パスワード=パスワード(「123」)ホスト=「localhost」を、ユーザ=「ルート」パスワードを入力せずに車 - >再起動し、通常のサーバー(NET START mysqlの) - >通常のログイン
使用するのは簡単
データは、ルックアップテーブルに保持されたファイルを見つける必要があり、表には、ライブラリに存在している必要がありますフォルダです
ライブラリーの基本操作
フォルダに似図書館。
# 切换数据库
use 数据库名称
# 查看所有数据库
show databases;
# 查看单个数据库的详细信息
show create database 数据库名;
show create database db1; 查单个
# 查看当前库
select database();
# 创建数据库
create database 数据库名称;
create database db1;
# 创建数据库时指定字符编码,不能写utf-8
create database 数据库名称 charset utf8;
# 删除数据库
drop database 数据库名称;
drop database db1; 删库
# 修改数据库编码,可以进入到数据库文件修改db.opt。db.opt的第一行是编码,第二行是校对规则
# 修改数据库的字符编码
alter database 数据库名 charset utf-8;
alter database db1 charset='gbk'; 修改编码
# 修改数据库名,可以直接修改对应的文件夹名称
オペレーティングテーブル
表等価ファイル、テーブル内のレコードは、テーブルは、テーブルのタイトル・フィールドに対応するレコードが参照有していることを除いて、コンテンツファイルの行に相当します。
私たちは、「従業員情報テーブル作品」その前に書いたときに覚えていますか?このような店従業員の情報ファイル:
id,name,age,sex,phone,job
1,Tank,83,female,13651054608,IT
2,Nick,26,male,13304320533,Tearcher
3,Sean,25,male,13332353222,IT
4,Jason,40,male,13332353333,IT
テーブルに上記のファイルならば、それは以下のようにする必要があります
ID | 名 | 年齢 | 性別 | 電話 | ジョブ |
---|---|---|---|---|---|
1 | タンク | 83 | 女性 | 13651054608 | それ |
2 | ニック | 26 | 男性 | 13304320533 | Tearcher |
3 | ショーン | 25 | 男性 | 13332353222 | それ |
4 | ジェイソン | 40 | 男性 | 13332353333 | それ |
フィールドと呼ばれるID、名前、年齢、性別、電話、仕事、ラインの内容の残りの部分は、レコードと呼ばれています。
あなたがテーブルを作成するときは、ライブラリを開発する必要があります。テーブルを作成することは、特定のファイルを作成することです。
# 指定库或切换数据库:
use 数据库名称
# 查看当当前所在库:
select databases();
# 创建表
create table 表名称(列名称 列的数据类型,列名称2 列的数据类型...);
create table userinfo(id int,name char);
# 创建表时指定编码方式
create table 表名称(列名称 列的数据类型,列名称2 列的数据类型...)charset gbk;
# 查看当前库下所有表
show tables;
# 查看表结构
desc 表名称;<===>describe 表名称;
desc userinfo; <==> describe userinfo;
# 查看表的创建语句
show create table 表名称;
show create table userinfo;
# 修改表结构
# 添加字段
alter table 表名称 add 列名称 数据类型
# 删除字段
alter table 表名称 drop 列名称
# 修改数据类型
alter table 表名称 modify 列名称 新的数据类型;
alter table userinfo modify name char(32);
# 修改列名
alter table 表名称 change 旧的列名 新的列名 新的类型;
# 修改编码
alter table 表名称 charset utf8;
# 删除表
drop table 表名称;
drop table userinfo;
# 清空表
truncate table 表名称;