1.データベース製品の種類第
1世代のデータベースアーキテクチャ
-----リレーショナルデータベース時代(RDBMS)
代表的な製品:
クローズドソース:Oracle、MSSQL、DB2 ...
オープンソース:MySQL、PG、ClickHouse ..
第2世代のデータベースアーキテクチャ:並行性、ビジネスボリューム(ユーザーボリューム、データボリューム)の開発
-----リレーショナルデータベース時代(RDBMS)
+
----- NoSQL時代(SQL時代だけでなく)
代表的な製品:Memcache、Redis (キャッシュ)、MongoDBドキュメントデータベース、ES、Hadoop ..
第3世代データベースアーキテクチャ
-----分散/新しいデータベースアーキテクチャの時代(NewSQL時代)の
代表的な製品:
Aliシリーズ:PolarDB、OB
Pincap:TiDB
2.データベース業界の
データベースランキング情報に精通している
https://db-engines.com/en—>DB-Enginesランキング
3. MySQL Enterprise Edition
E:Enterprise Edition(料金が適用されます)を選択します。 30日間の試用
版C:Community Edition(オープンソース)、5年間の無料サービスをダウンロードできます。
コミュニティエディションの選択:
5.6:GAバージョン5.6.34- 6月から12月の間に最大、できれば偶数バージョン
5.7:通常は最新のGAバージョン5.7.28を選択します(2019年9月27日)
8.0:通常は最新のGAバージョン8.0.18を選択します+(2019年9月22日)
バージョン5.62020、通常および拡張サービスは10月に廃止されます
5.7バージョン2021、通常サービスは1月に廃止されます
4. MySQL
のコミュニティバージョンの公式Webサイトを取得します。https:
//www.mysql.com/downloads/ MySQL Community(GPL)ダウンロード»アーカイブのダウンロード»MySQL Community Server»製品バージョン(偶数の最新バージョンを選択してください) )オペレーティングシステム:linux-Generic
5.バイナリ展開の
ためのMySQL5.1環境の準備
# iptables -nL
# systemctl stop firewalld
# getenforce
# ping www.baidu.com
5.2MD5値を確認する
# md5sum mysql-5.7.28-linux-glibc2.12-x86_64.tar.gz
1daa30a32b99a92062f481bd3ef8694c mysql-5.7.28-linux-glibc2.12-x86_64.tar.gz
对比官网中的MD5值: 1daa30a32b99a92062f481bd3ef8694c
5.3指定したディレクトリにソフトウェアをアップロードします
# cd /opt
上传软件包 mysql-5.7.28-linux-glibc2.12-x86_64.tar.gz
5.4解凍してソフトリンクを作成する
# tar xf mysql-5.7.28-linux-glibc2.12-x86_64.tar.gz
# ln -s mysql-5.7.28-linux-glibc2.12-x86_64 mysql
5.5環境変数を変更する
# echo 'export PATH=/opt/mysql/bin/:$PATH' >>/etc/profile
# source /etc/profile
# mysql -V
mysql Ver 14.14 Distrib 5.7.28, for linux-glibc2.12 (x86_64) using EditLine wrapper
5.6レガシー環境をクリーンアップする
# rpm -qa|grep mariadb
mariadb-libs-5.5.60-1.el7_5.x86_64
用yum清理
# yum remove mariadb-libs-5.5.60-1.el7_5.x86_64
删掉/etc/my.cnf已有文件
# rm -rf /etc/my.cnf
5.7依存パッケージをインストールする
yum install -y libaio-devel
5.8関連するディレクトリを作成して承認する
# mkdir -p /data/3306 -- 存放数据库数据
# useradd -M -s /sbin/nologin mysql -- 创建管理用户
# chown -R mysql.mysql /data/3306
5.9データベースを初期化する
/opt/mysql/bin/mysqld --initialize-insecure --user=mysql --basedir=/opt/mysql --datadir=/data/3306
如果下载了5.6版本的初始化方式如下:
/opt/mysql/scripts/mysql_install_db --user=mysql --basedir=/opt/mysql --datadir=/data/3306
5.10構成ファイルの準備
機能:
1。データベースの開始と作業に影響を与えます。
2.クライアント接続に影響します(ローカルサーバーで開始されます)
vim /etc/my.cnf
[mysqld]
user=mysql
basedir=/opt/mysql
datadir=/data/3306
socket=/tmp/mysql.sock
[mysql]
socket=/tmp/mysql.sock
デフォルトの構成ファイルの読み取り順序
# mysqld --help --verbose|grep my.cnf
/etc/my.cnf ---> /etc/mysql/my.cnf ---> /usr/local/mysql/etc/my.cnf ---> ~/.my.cnf
5.11起動スクリプトを準備する
# cp /opt/mysql/support-files/mysql.server /etc/init.d/mysqld
# chkconfig --add mysqld
# systemctl start mysqld # /etc/init.d/mysqld start
# systemctl enable mysqld
# systemctl status mysqld
# mysql
需要设置管理员密码如下:
# mysqladmin password 123456
6 MySQLのアーキテクチャ
6.1 MySQLのC / Sモデルの仕事構造
クライアント:
組み込みコマンド:mysqlの、mysqldumpを、mysqladminは
サードパーティ製ツール:SQLyogは、Navicatは、ワークベンチ
API:PHP-mysqliの(phpMyAdminの)、簡易設定(workpress)
サーバー:
TCP / IP -h -Pソケット(IP +ポート)
Unixソケット-S
概要:クライアントコマンドまたはツールを使用して、ローカルUNIXソケットまたはIP + Portを介してサーバーmysqldに接続します。
6.2 MySQLインスタンス構造
MySQLインスタンス構造の構成:mysqldデーモン+マスタースレッド+ワーカースレッドスレッド(IO \ SQL \ Purge ...)+事前に割り当てられたメモリ構造
MySQL処理データ:例を通して—>データの処理
プロセスとは何ですか?スレッドとは何ですか?
定義の違い:プロセスは独立した機能を持つプログラムであり、スレッドはプロセスのエンティティです。
機能の違い:プロセスはリソースの割り当てとスケジューリングの単位であり、スレッドはプロセスの実行単位です。
同じプロセス内の複数のスレッドを同時に実行できます。1つのスレッドで別のスレッドを作成およびキャンセルできます。リソースはプロセス間で共有できず、リソースはスレッド間で共有できます。各プログラム間のプロセスは互いに独立していますが、各プログラムのスレッドは互いにデータを共有しています。つまり、
1)プログラムには少なくとも1つのプロセスがあり、プロセスには少なくとも1つのスレッドがあります。
2)スレッドの分割スケールはプロセスの分割スケールよりも小さいため、マルチスレッドプログラムの同時実行性は高くなります。
3)また、プロセスは実行中に独立したメモリユニットを持ち、複数のスレッドがメモリを共有するため、プログラムの運用効率が大幅に向上します。
6.3MySQLコアプログラムの動作原理
6.3.1サーバーレイヤー/インスタンスレイヤー----> Linux OS
6.3.1.1コネクタ
接続プロトコル:tcp / ipおよびunixソケットソケット
ロード認証テーブル:ユーザー
パスワード検証は、パスワード検証スレッドを介して接続を生成します
6.3.1.2 SQLレイヤー
6.3.1.3管理ツール、プラグイン、mysqlshell(8.0以降)
6.3.2エンジンレイヤー/ストレージエンジンレイヤー---->ファイルシステム
詳細については、WeChatパブリックアカウントをフォローしてください
上記のコンテンツはoldguo先生によって教えられてい
ます。詳細については、ステーションBを参照してください:https ://www.bilibili.com/video/BV157411K7sf?from = search&seid = 2216971352526804506