成人午夜视频全免费观看高清-秋霞福利视频一区二区三区-国产精品久久久久电影小说-亚洲不卡区三一区三区一区

mysql物理文件組成

一:MySQL 與其他數(shù)據(jù)庫(kù)比較

創(chuàng)新互聯(lián)是一家專業(yè)提供阿爾山企業(yè)網(wǎng)站建設(shè),專注與成都做網(wǎng)站、網(wǎng)站設(shè)計(jì)、外貿(mào)營(yíng)銷網(wǎng)站建設(shè)H5建站、小程序制作等業(yè)務(wù)。10年已為阿爾山眾多企業(yè)、政府機(jī)構(gòu)等服務(wù)。創(chuàng)新互聯(lián)專業(yè)網(wǎng)絡(luò)公司優(yōu)惠進(jìn)行中。

1)功能比較

作為一個(gè)成熟的數(shù)據(jù)庫(kù)系統(tǒng)管理系統(tǒng),現(xiàn)在已經(jīng)具備通用數(shù)據(jù)庫(kù)管理系統(tǒng)的相關(guān)功能

2)易用性比較

對(duì)于普通用戶操作難度相對(duì)簡(jiǎn)單易用原則,從安裝方面來說,MySQL安裝包僅僅只有100MB左右,安裝難易程度要比Oracl,數(shù)據(jù)庫(kù)簡(jiǎn)單很多,不論是通過已經(jīng)編譯好的二進(jìn)制分發(fā)包還是源碼編譯安裝,都比較簡(jiǎn)單

3)性能比較

MySQL非常優(yōu)異表現(xiàn),而且其他商用的通用數(shù)據(jù)庫(kù)系統(tǒng)中,只有Oracle數(shù)據(jù)庫(kù)能相提并論。

4可靠性)MySQL數(shù)據(jù)庫(kù)發(fā)展過程三個(gè)原則, 簡(jiǎn)單,高效,可靠。

二:MySQL主要場(chǎng)景

1)web網(wǎng)站系統(tǒng)

MySQ;是開放源代碼,可以免費(fèi)使用

2)日志記錄系統(tǒng)

MySQL數(shù)據(jù)庫(kù)插入和查詢都非常高效,使用MyISAM存儲(chǔ)時(shí)候 兩者可以互不鎖定,達(dá)到很高效的并發(fā)能力,例如,登陸日志,操作日志,都非常應(yīng)用場(chǎng)景。

3)數(shù)據(jù)倉(cāng)庫(kù)系統(tǒng)

隨著數(shù)據(jù)量增長(zhǎng),需要空間越來越大,使數(shù)據(jù)統(tǒng)計(jì)分析變得越來越低,解決思路

采用高性能主機(jī)提高運(yùn)算,用高端存儲(chǔ)設(shè)備提高I\O性能,2就是通過數(shù)據(jù)復(fù)制多臺(tái)使用大容量硬盤上以提高性能運(yùn)算能力,但是存儲(chǔ)空間有一定限制,3可以通過水平拆分來存放數(shù)據(jù),MySQL都有較大優(yōu)勢(shì),通過簡(jiǎn)單復(fù)制功能,可以將數(shù)據(jù)從一臺(tái)主機(jī)復(fù)制到另外一臺(tái)主機(jī)、

三:物理文件組成

日志文件:錯(cuò)誤日志 查詢?nèi)罩?慢查詢?nèi)罩?事物日志

日志記錄這mysql數(shù)據(jù)庫(kù)運(yùn)行期間發(fā)生變化,相當(dāng)于記錄mysql數(shù)據(jù)庫(kù)連接客戶的連接狀況

SQL語句執(zhí)行情況和錯(cuò)誤信息等,當(dāng)數(shù)據(jù)意外損壞時(shí),可以通過錯(cuò)誤日志看出原因,并且日志進(jìn)行數(shù)據(jù)恢復(fù)。

錯(cuò)誤日志:在mysql中默認(rèn)是開啟的,錯(cuò)誤日志存儲(chǔ)在mysql數(shù)據(jù)庫(kù)目錄中

錯(cuò)誤日志信息可以自己進(jìn)行配置,錯(cuò)誤日志可以通過log-error和存儲(chǔ)位置log-warninge定義

是否將警示信息定義至錯(cuò)誤日志中,

服務(wù)器運(yùn)行過程錯(cuò)誤信息,事件調(diào)度器運(yùn)行一個(gè)事件產(chǎn)生,在從服務(wù)器啟動(dòng)服務(wù)器進(jìn)程產(chǎn)生的信息。

因此mysql提供兩組命令,分別查看系統(tǒng)設(shè)置和運(yùn)行狀態(tài)。 
1、查看系統(tǒng)設(shè)置: 
SHOW [GLOBAL | SESSION] VARIABLES [like_or_where] 
SHOW VARIABLES:shows the values of MySQL system variables. 
2、運(yùn)行狀態(tài): 
SHOW [GLOBAL | SESSION] STATUS [like_or_where] 
SHOW STATUS:provides server status information.

 如何修改系統(tǒng)配置

mysql物理文件組成

方法1:配置文件設(shè)置my.cnf

如:binlog_cache_size = 1M

方法2:set globalbinlog_cache_size = 1048576;

使用set 將安全級(jí)別改為2

mysql物理文件組成

3:查看mysql版本

Mysql -V     mysql> status;   select version ();

mysql物理文件組成

4錯(cuò)誤日志狀態(tài)

mysql物理文件組成

注 log_error定義錯(cuò)誤文件路徑

   Log__error_verbosity  安全級(jí)別

 查看錯(cuò)誤日志

 Tail  /usr/local/mysql/data/mysqld.err

mysql物理文件組成

二:刪除錯(cuò)誤日志

數(shù)據(jù)庫(kù)管理員可以刪除很久以前的錯(cuò)誤日志,為保證服務(wù)器硬盤空間,可以使用、mysqladmin -u root  flush-logs  FLUSH LOGS開啟新的錯(cuò)誤日志

mysql物理文件組成

二進(jìn)制日志

主要用于記錄修改數(shù)據(jù)或有可能引起數(shù)據(jù)改變的mysql語句,并且記錄語句發(fā)生時(shí)間,執(zhí)行時(shí)長(zhǎng),操作數(shù)據(jù)等等。一般體積上限為1G

首先看到二進(jìn)制是關(guān)閉的OFF 需要在vim /etc/my.conf進(jìn)行配置

Bin_log=/usr/local/mysql/data/log_bin  開啟

mysql物理文件組成

一般設(shè)置為512或者1個(gè)G達(dá)到上限時(shí)mysql重新創(chuàng)建一個(gè)日志開始記錄

為保證mysql安全 不會(huì)將同一個(gè)事物分開記錄倆個(gè)binlog中

事務(wù)日志

事物日志表將一個(gè)事物任務(wù)提交,對(duì)包含在事物中的多條語句要么執(zhí)行,要么全部不執(zhí)行。

非事物表則不支持此操作,處理中如果遇到錯(cuò)誤,在錯(cuò)誤前語句執(zhí)行成功,之后則執(zhí)行不成功

 指定二進(jìn)制日志類型

 Mysql復(fù)制主要有三種方式 基于SQL語句復(fù)制 混合模式復(fù)制  基于行復(fù)制

  三 通過編輯my.conf中l(wèi)og-bin選擇開啟二進(jìn)制日志

其中 DIR參數(shù)指定二進(jìn)制文件存儲(chǔ)路徑filename參數(shù)指定二級(jí)制文件文件名,形式為filename.number形式為000001. 000002等 每次重啟mysql服務(wù)或運(yùn)行flush logs;都會(huì)生成一個(gè)新的二進(jìn)制文件

mysql物理文件組成

mysql物理文件組成

查看二進(jìn)制文件信息

mysql物理文件組成

查看二進(jìn)制日志信息的命令:

語法格式:SHOW BINLOG EVENTS[IN 'log_name'] [FROM pos] [LIMIT [offset,] row_count]

#查看所有的二進(jìn)制信息

mysql> show binlog events\G;

#查看指定日志的二進(jìn)制信息

mysql> show binlog events in 'mysql-bin.000013'\G;

 刪除二進(jìn)制日志信息

長(zhǎng)時(shí)間不清理二進(jìn)制文件,影響磁盤空間,刪除之后可能導(dǎo)致數(shù)據(jù)庫(kù)奔潰無法恢復(fù),所以刪除二進(jìn)制首先和數(shù)據(jù)庫(kù)備份

語法形式:

mysql> PURGE { BINARY | MASTER } LOGS {TO 'log_name' | BEFORE datetime_expr }

其中TO 'log_name'表示把這個(gè)文件之前的其他文件都刪除掉,也可使用BEFORE datetime_expr指定把哪個(gè)時(shí)間之前的二進(jìn)制文件刪除了。

mysql物理文件組成

也可以指定時(shí)間來刪除二進(jìn)制日志

命令行下查看二進(jìn)制日志:

由于無法使用cat等方式直接打開并查看二進(jìn)制日志;所以必須使用mysqlbinlog命令。但是當(dāng)正在執(zhí)行mysql讀寫操作時(shí)建議不要使用此打開正在使用的二進(jìn)制日志文件

mysql物理文件組成

mysql物理文件組成

刪除所以二進(jìn)制日志

mysql物理文件組成

3 事物日志

可以幫助提高事務(wù)的效率。使用事務(wù)日志,存儲(chǔ)引擎在修改表的數(shù)據(jù)時(shí)只需要修改其內(nèi)存拷貝,再把修改行為記錄到持久在硬盤上的事務(wù)日志中,而不用每次都將修改的數(shù)據(jù)本身持久到磁盤。mysql會(huì)默認(rèn)提供多種存儲(chǔ)引擎,你可以通過下面的查看:
查看你的mysql現(xiàn)在已提供什么存儲(chǔ)引擎:
mysql> show engines;
create table庫(kù)名.表名 engine = innodb;
這樣就可以將表的引擎變更為innodb引擎了。
也可以在創(chuàng)建表之后通過下面語句來變更:
alter table庫(kù)名.表名engine =innodb;

在事務(wù)提交時(shí)innodb是否同步日志從緩沖區(qū)到文件中,當(dāng)這個(gè)值為1(默認(rèn)值)之時(shí),在每個(gè)事務(wù)提交時(shí),日志緩沖被寫到日志文件,對(duì)日志文件做到磁盤操作的刷新,性能會(huì)很差造成大量的磁盤I/O但這種方式最安全

刷寫的概念

設(shè)為1當(dāng)然是最安全的,但性能頁(yè)是最差的(相對(duì)其他兩個(gè)參數(shù)而言,但不是不能接受)。如果對(duì)數(shù)據(jù)一致性和完整性要求不高,完全可以設(shè)為2,如果只最求性能,例如高并發(fā)寫的日志服務(wù)器,設(shè)為0來獲得更高性能

mysql物理文件組成

慢查詢?nèi)罩?/p>

記錄了語句執(zhí)行的時(shí)刻,執(zhí)行所消耗的時(shí)間,執(zhí)行用戶,連接主機(jī)等相關(guān)信息。

慢查詢?nèi)罩镜淖饔茫?/p>

慢查詢?nèi)罩臼怯脕碛涗泩?zhí)行時(shí)間超過指定時(shí)間的查詢語句。通過慢查詢?nèi)罩荆梢圆檎页瞿男┎樵冋Z句的執(zhí)行效率很低,以便進(jìn)行優(yōu)化。一般建議開啟,它對(duì)服務(wù)器性能的影響微乎其微,但是可以記錄mysql服務(wù)器上執(zhí)行了很長(zhǎng)時(shí)間的查詢語句。

mysql物理文件組成

啟動(dòng)和設(shè)置查詢?nèi)罩?/p>

mysql物理文件組成

slow_query_log:off關(guān)閉狀態(tài)  on開啟狀態(tài)
slow_query_log_file  慢查詢?nèi)罩敬娣诺攸c(diǎn)

long_query_time選項(xiàng)來設(shè)置一個(gè)時(shí)間值,時(shí)間以秒為單位,可以精確到微秒。如果查詢時(shí)間超過了這個(gè)時(shí)間值(默認(rèn)為10秒),這個(gè)查詢語句將被記錄到慢查詢?nèi)罩局? 設(shè)置為0的話表示記錄所有的查詢。

如果不指定存儲(chǔ)路徑,慢查詢?nèi)罩灸J(rèn)存儲(chǔ)到mysql數(shù)據(jù)庫(kù)的數(shù)據(jù)文件下,如果不指定文件名,默認(rèn)文件名為hostname-slow.log

修改my.cnf文件:

mysql物理文件組成

mysql物理文件組成

方法2:通過登錄mysql服務(wù)器直接定義,方式如下:

mysql>set global slow_query_log=1;  #開啟慢查詢?nèi)罩?/p>

Query OK, 0 rowsaffected (0.35 sec)

mysql>set session long_query_time=0.0001; #更改時(shí)間(當(dāng)前session中,退出則重置)

Query OK, 0 rowsaffected (0.00 sec)

mysql>set global long_query_time=0.0001; #更改時(shí)間(全局中,重啟服務(wù)則重置)

mysql> SHOW VARIABLES LIKE 'long%';  #查詢定義時(shí)間

查看慢查詢?nèi)罩?/p>

mysql> use mysql

mysql> selectuser,host from user where user="root";

mysql物理文件組成

mysql物理文件組成

3)數(shù)據(jù)文據(jù)

在MySQL中每一個(gè)數(shù)據(jù)庫(kù)都會(huì)在定義好(或者默認(rèn))的數(shù)據(jù)目錄下存在一個(gè)以數(shù)據(jù)庫(kù)名字命名的文件夾,用來存放該數(shù)據(jù)庫(kù)中各種表數(shù)據(jù)文件。

mysql> show create table 表名;

create table庫(kù)名.表名 engine = innodb;  這樣就可以將表的引擎變更為innodb引擎了。

登錄mysql,創(chuàng)建一個(gè)數(shù)據(jù)庫(kù)如testdb,并在數(shù)據(jù)庫(kù)中創(chuàng)建一個(gè)表

mysql物理文件組成

mysql物理文件組成

以myisam存儲(chǔ)引擎創(chuàng)建一個(gè)測(cè)試表tb2

mysql物理文件組成

.frm”文件

與表相關(guān)的元數(shù)據(jù)(meta)信息都存放在“.frm”文件中,包括表結(jié)構(gòu)的定義信息等。不論是什么存儲(chǔ)引擎(MySQL常用的兩個(gè)存儲(chǔ)引擎是MyISAM和InnoDB),每一個(gè)表都會(huì)有一個(gè)以表名命名的“.frm”文件。

MyISAM數(shù)據(jù)庫(kù)表文件:.MYD文件:表數(shù)據(jù)文件;.MYI文件:索引文件

MYD”文件

“.MYD”文件是MyISAM存儲(chǔ)引擎專用,存放MyISAM表的數(shù)據(jù)。每一個(gè)MyISAM表都會(huì)有一個(gè)“.MYD”文件與之對(duì)應(yīng),同樣存放于所屬數(shù)據(jù)庫(kù)的文件夾下,和“.frm”文件在一起。

MYI”文件

“.MYI”文件也是專屬于MyISAM存儲(chǔ)引擎的,主要存放MyISAM表的索引相關(guān)信息。

InnoDB采用表空間(tablespace)來管理數(shù)據(jù),存儲(chǔ)表數(shù)據(jù)和索引。

.ibd文件:?jiǎn)伪肀砜臻g文件,每個(gè)表使用一個(gè)表空間文件(file per table),存放用戶數(shù)據(jù)庫(kù)表數(shù)據(jù)和索引。

.ibd”文件和ibdata文件

這兩種文件都是存放Innodb數(shù)據(jù)的文件,之所以有兩種文件來存放Innodb的數(shù)據(jù)(包括索引),是因?yàn)镮nnodb的數(shù)據(jù)存儲(chǔ)方式能夠通過配置來決定是使用共享表空間存放存儲(chǔ)數(shù)據(jù),還是獨(dú)享表空間存放存儲(chǔ)數(shù)據(jù)。

共享表空間以及獨(dú)占表空間都是針對(duì)數(shù)據(jù)的存儲(chǔ)方式而言的。

共享表空間:  某一個(gè)數(shù)據(jù)庫(kù)的所有的表數(shù)據(jù),索引文件全部放在一個(gè)文件中。

獨(dú)占表空間:  每一個(gè)表都將會(huì)生成以獨(dú)立的文件方式來進(jìn)行存儲(chǔ),每一個(gè)表都有一個(gè).frm表描述文件,還有一個(gè).ibd文件。 其中這個(gè)文件包括了單獨(dú)一個(gè)表的數(shù)據(jù)內(nèi)容以及索引內(nèi)容。

所有的數(shù)據(jù)和索引存放到一個(gè)文件中,多個(gè)表及索引在表空間中混合存儲(chǔ),這樣對(duì)于一個(gè)表做了大量刪除操作后表空間中將會(huì)有大量的空隙,特別是對(duì)于統(tǒng)計(jì)分析,日值系統(tǒng)這類應(yīng)用最不適合用共享表空間。

獨(dú)立表空間:

優(yōu)點(diǎn):
1.每個(gè)表都有自已獨(dú)立的表空間。
2.每個(gè)表的數(shù)據(jù)和索引都會(huì)存在自已的表空間中。
3.可以實(shí)現(xiàn)單表在不同的數(shù)據(jù)庫(kù)中移動(dòng)。
4.空間可以回收
查看當(dāng)前數(shù)據(jù)庫(kù)的表空間管理類型


mysql物理文件組成

ON代表獨(dú)立表空間管理,OFF代表共享表空間管理

Innodb共享表空間配置:

mysql物理文件組成

mysql物理文件組成

mysql物理文件組成

768/64=12

innodb_data_home_dir = "/path/" 數(shù)據(jù)庫(kù)文件所存放的目錄

innodb_log_group_home_dir = "/path/" 日志存放目錄

innodb_data_file_path=ibdata1:10M:autoextend 設(shè)置一個(gè)可擴(kuò)展大小的尺寸為10MB的數(shù)據(jù)文件(共享數(shù)據(jù)文件),名為ibdata1。沒有給出文件的位置,所以默認(rèn)的是在MySQL的數(shù)據(jù)目錄內(nèi)。

innodb_file_per_table=1|0   //1為使用獨(dú)占表空間,0 為使用共享表空間

在/etc/my.cnf文件中設(shè)置6400頁(yè)而當(dāng)前ibdata1為768頁(yè)

需要計(jì)算768/64=12
啟動(dòng)mysql,成功!

計(jì)算公式:64pages相當(dāng)于1M,1page是16KB

mysql物理文件組成

mysql物理文件組成

mysql物理文件組成

調(diào)用存儲(chǔ)過程

mysql物理文件組成

查看表中行數(shù):

mysql物理文件組成

對(duì)INNODB,直接用命令show table status查看某個(gè)表的表空間占用情況

mysql物理文件組成

MySQL數(shù)據(jù)庫(kù)中每個(gè)表占用的空間、表記錄的行數(shù)的話,可以打開MySQL的information_schema數(shù)據(jù)庫(kù)。在該庫(kù)中有一個(gè)TABLES表,這個(gè)表主要字段分別是:

TABLE_SCHEMA : 數(shù)據(jù)庫(kù)名
TABLE_NAME:表名
ENGINE:所使用的存儲(chǔ)引擎
TABLE_ROWS:記錄數(shù)
DATA_LENGTH:數(shù)據(jù)大小
INDEX_LENGTH:索引大小

 

master.info文件

包括Master的主機(jī)地址,連接用戶,連接密碼,連接端口,當(dāng)前日志位置,已經(jīng)讀取到的日志位置等信息。

 elay log和relay log index

mysql-relay-bin.xxxxxn文件用于存放Slave端的I/O線程從Master端所讀取到的Binary Log信息,然后由Slave端的SQL線程從該relay log中讀取并解析相應(yīng)的日志信息,轉(zhuǎn)化成Master所執(zhí)行的SQL語句,然后在Slave端應(yīng)用。

mysql-relay-bin.index文件的功能類似于mysql-bin.index,同樣是記錄日志的存放位置的絕對(duì)路徑,只不過他所記錄的不是Binary Log,而是Relay Log。

3)relay-log.info文件:

類似于master.info,它存放通過Slave的I/O線程寫入到本地的relay log的相關(guān)信

息。供Slave端的SQL線程以及某些管理操作隨時(shí)能夠獲取當(dāng)前復(fù)制信息

 socket文件也是在Unix/Linux環(huán)境下才有的,用戶在Unix/Linux環(huán)境下客戶端連接可以不通過TCP/IP網(wǎng)絡(luò)而直接使用Unix Socket來連接MySQL。

mysql有兩種連接方式,常用的一般是tcp
mysql –h  mysql主機(jī)ip -uroot  -pxxx
mysql -S  /path /mysql.sock


mysql物理文件組成 







文章名稱:mysql物理文件組成
網(wǎng)頁(yè)路徑:http://jinyejixie.com/article28/iishjp.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供企業(yè)網(wǎng)站制作、網(wǎng)站策劃、微信公眾號(hào)、小程序開發(fā)外貿(mào)建站、App設(shè)計(jì)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

綿陽服務(wù)器托管
蓝山县| 塔河县| 比如县| 徐汇区| 专栏| 巴青县| 永靖县| 沙坪坝区| 密云县| 鄂托克旗| 石楼县| 合作市| 文山县| 樟树市| 鄂托克前旗| 鲜城| 镇巴县| 宁国市| 军事| 岑溪市| 哈巴河县| 犍为县| 琼结县| 新蔡县| 米脂县| 安新县| 玉环县| 桂东县| 玉山县| 武陟县| 新野县| 澄迈县| 从江县| 安化县| 公安县| 上虞市| 石首市| 饶阳县| 沿河| 西充县| 蒙城县|