国产亚洲精品福利在线无卡一,国产精久久一区二区三区,亚洲精品无码国模,精品久久久久久无码专区不卡

當(dāng)前位置: 首頁(yè) > news >正文

不懂編程如何做網(wǎng)站萬(wàn)能推廣app

不懂編程如何做網(wǎng)站,萬(wàn)能推廣app,沈陽(yáng)網(wǎng)站制作服務(wù),網(wǎng)站沒(méi)有備案 合法嗎當(dāng)一臺(tái)數(shù)據(jù)庫(kù)服務(wù)器出現(xiàn)負(fù)載的情況下,需要擴(kuò)展服務(wù)器服務(wù)器性能擴(kuò)展方式有向上擴(kuò)展,垂直擴(kuò)展。向外擴(kuò)展,橫向擴(kuò)展。通俗的講垂直擴(kuò)展是將一臺(tái)服務(wù)器擴(kuò)展為性能更強(qiáng)的服務(wù)器。橫向擴(kuò)展是增加幾臺(tái)服務(wù)器。 主從復(fù)制好比存了1000塊錢(qián)在主上&…

當(dāng)一臺(tái)數(shù)據(jù)庫(kù)服務(wù)器出現(xiàn)負(fù)載的情況下,需要擴(kuò)展服務(wù)器服務(wù)器性能擴(kuò)展方式有向上擴(kuò)展,垂直擴(kuò)展。向外擴(kuò)展,橫向擴(kuò)展。通俗的講垂直擴(kuò)展是將一臺(tái)服務(wù)器擴(kuò)展為性能更強(qiáng)的服務(wù)器。橫向擴(kuò)展是增加幾臺(tái)服務(wù)器。

主從復(fù)制好比存了1000塊錢(qián)在主上,在從上查不到,主從復(fù)制就是主和從數(shù)據(jù)一致。

復(fù)制的功能:負(fù)載均衡讀操作,備份,高可用和故障切換,數(shù)據(jù)分布,MySQL升級(jí)。

一、主從復(fù)制架構(gòu)和原理

1.1 mysql主從復(fù)制

讀寫(xiě)分離

復(fù)制:每個(gè)節(jié)點(diǎn)都有相同的數(shù)據(jù)集,向外擴(kuò)展,基于二進(jìn)制日志的單向復(fù)制

1.2 復(fù)制的功能

負(fù)載均衡讀操作

備份

高可用和故障切換

數(shù)據(jù)分布

MySQL升級(jí)

1.3復(fù)制結(jié)構(gòu)和主從復(fù)制原理

一主一從,和一主多從。

主從復(fù)制的相關(guān)程序。

1.3.1 兩個(gè)日志三個(gè)線程:

日志:二進(jìn)制日志,中繼日志(主上的二進(jìn)制日志)

線程:dump線程,io線程,sql線程

主服務(wù)器:mysqldump線程,傳輸二進(jìn)制日志給從

從服務(wù)器:io線程:接收主的二進(jìn)制日志,寫(xiě)入中繼日志;sql線程:讀取中繼日志,寫(xiě)入數(shù)據(jù)庫(kù)。

1.3.2 原理:

1.主節(jié)點(diǎn)負(fù)責(zé)用戶的寫(xiě)操作,用戶發(fā)起寫(xiě)操作,會(huì)修改數(shù)據(jù)庫(kù)

2.數(shù)據(jù)庫(kù)修改后,會(huì)更新主節(jié)點(diǎn)上的二進(jìn)制日志

3.主服務(wù)器會(huì)產(chǎn)生一個(gè)dump線程,一邊讀取二進(jìn)制日志一邊將二進(jìn)制日志通過(guò)網(wǎng)絡(luò)傳給從服務(wù)器

4.從服務(wù)器會(huì)開(kāi)啟io線程,接收主服務(wù)器的二進(jìn)制日志

5.io線程會(huì)將主服務(wù)器的二進(jìn)制日志寫(xiě)入中繼日志,這時(shí)只是生成了一個(gè)文件,并沒(méi)有同步

6.從服務(wù)器再開(kāi)啟sql線程將中繼日志中操作寫(xiě)入數(shù)據(jù)庫(kù)完成更新

主從數(shù)據(jù)就保持一致了!

主從復(fù)制相關(guān)線程:

dump Thread:為每個(gè)slave的I/O Thread啟動(dòng)一個(gè)dump線程,用于向其發(fā)送binary log events從節(jié)點(diǎn)

I/O?Thread:向master請(qǐng)求二進(jìn)制日志事件,并保存于中繼日志中

SQL Thread:從中繼日志中讀取日志事件,在本地完成同步操作。

主數(shù)據(jù)更新 -> 寫(xiě)入bin log -> slave服務(wù)器線程 -> io Thread -> 寫(xiě)入Relay Log -> SQL Thread -> 從數(shù)據(jù)庫(kù)更新。這樣就主從一致了。

yum安裝數(shù)據(jù)庫(kù):

二、主從復(fù)制

2.1 主-從復(fù)制

Node3作為主192.168.114.30,Node4作為從192.168.114.40

2.2 主節(jié)點(diǎn)配置:

(1)啟用二進(jìn)制日志

主節(jié)點(diǎn)配置:啟用二進(jìn)制日志

(2)為當(dāng)前節(jié)點(diǎn)設(shè)置一個(gè)全局唯一的ID號(hào)

[mysqld]

server-id=? ? ? ? ? ? ? ? ? ? ? ? #區(qū)分自己的日志和別人的日志

log-basename=master? ? ? ? #可選項(xiàng),設(shè)置datadir中日志名稱,確保不依賴主機(jī)名

(3)查看從二進(jìn)制日志的文件和位置開(kāi)始進(jìn)行復(fù)制

show master status;

(4)創(chuàng)建有復(fù)制權(quán)限的用戶賬號(hào)

grant replication slave on *.* 'repluser'@'HOST' identified by 'repluser';

2.3 從節(jié)點(diǎn)配置:

(1)啟動(dòng)中繼日志

[mysqld]

server-id=

log-bin=

(2) 使用有復(fù)制權(quán)限的用戶賬號(hào)連接至主服務(wù)器,并啟用復(fù)制線程

mysql> CHANGE MASTER TO
?MASTER_HOST='192.168.114.10',
?MASTER_USER='test',
?MASTER_PASSWORD='ABC123',
?MASTER_PORT=3306,
?MASTER_LOG_FILE='mysql-bin.000002',
?MASTER_LOG_POS=448;

show slave status;

2.4 實(shí)際操作:一主一從

Node3作為主:

在文件最后添加兩條配置。

[root@Node3 ~]#:vim /etc/my.cnf
......
server-id=30
log-bin=/data/mysql/mysql-bin

建立目錄并修改權(quán)限:

[root@Node3 ~]#:mkdir -p /data/mysql
[root@Node3 ~]#:chown -R mysql.mysql /data

重啟數(shù)據(jù)庫(kù):

systemctl restart mysqld

登錄并新建同步用戶:

mysql -uroot -pabc123

master狀態(tài),查看同步文件和同步位置:763

Node4作為從:

[root@Node4 ~]#:vim /etc/my.cnf
......
server-id=40
log-bin=/data/mysql/mysql-bin

建立目錄:

[root@Node4 ~]#:mkdir /data/mysql -p
[root@Node4 ~]#:chown -R mysql.mysql /data

重啟:systemctl start mysqld

主上查看節(jié)點(diǎn):449

主上查看二進(jìn)制文件,我們指定了在/data/mysql/下:

[root@Node3 ~]#:ls /data/mysql/
mysql-bin.000001 ?mysql-bin.000002 ?mysql-bin.index

這個(gè)是最新的。

登錄數(shù)據(jù)庫(kù)添加主的信息,有模版,注意修改:

help change master to;

mysql> help change master to;
......
CHANGE MASTER TOMASTER_HOST='source2.example.com',MASTER_USER='replication',MASTER_PASSWORD='password',MASTER_PORT=3306,MASTER_LOG_FILE='source2-bin.001',MASTER_LOG_POS=4,MASTER_CONNECT_RETRY=10;
#這里是模版,要根據(jù)自己環(huán)境修改

開(kāi)啟IO線程以及SQL線程:start slave;

?查看從服務(wù)器的狀態(tài):都是yes就是正常狀態(tài)。如果有錯(cuò)就清空主從配置:reset slave all;

這里還有個(gè)狀態(tài):Seconds_Behind_Master: 0? ?代表與主服務(wù)器的信息差,0代表同步

2.5 驗(yàn)證

先看從上的數(shù)據(jù)庫(kù):

在主上創(chuàng)建一個(gè)數(shù)據(jù)庫(kù),看從上是否也有這個(gè)數(shù)據(jù)庫(kù):

mysql> create database test;
Query OK, 1 row affected (0.00 sec)

在從上查看:

也有了test數(shù)據(jù)庫(kù)。實(shí)現(xiàn)主從復(fù)制!

可以看到主從建立了連接

三、案例:(主從復(fù)制+完備)

假設(shè)主節(jié)點(diǎn)的數(shù)據(jù)庫(kù)已經(jīng)運(yùn)行了一段時(shí)間,產(chǎn)生了一定量的數(shù)據(jù),主從復(fù)制只能復(fù)制開(kāi)啟后數(shù)據(jù),那之前的數(shù)據(jù)如何處理?

把之前的那些數(shù)據(jù)做好完全備份。之后的數(shù)據(jù)通過(guò)主從復(fù)制實(shí)現(xiàn)備份。再結(jié)合在一起。(快照,重新還原到mysql)

安裝好數(shù)據(jù)庫(kù)之后,把一個(gè)數(shù)據(jù)庫(kù)文件拖進(jìn)來(lái)/data/下。把數(shù)據(jù)庫(kù)hellodb_innodb.sql文件導(dǎo)進(jìn)數(shù)據(jù)庫(kù)中。

?進(jìn)入數(shù)據(jù)庫(kù)查看:

開(kāi)啟二進(jìn)制日志:

[root@Node3 ~]#:vim /etc/my.cnf
......
server-id=30
log-bin=/data/mysql/log/mysql-bin

建立路徑:

[root@Node3 ~]#:mkdir /data/mysql/log -p
[root@Node3 ~]#:chown -R mysql.mysql /data
[root@Node3 ~]#:systemctl restart mysqld

?完全備份:-A是把所有的數(shù)據(jù)庫(kù)都備份在/data/下取名為all.sql。-F備份前滾動(dòng)日志,鎖定表完成后,執(zhí)行flush logs命令,生成新的二進(jìn)制日志文件。

mysqldump -uroot -pabc123 -A -F --master-data=1 --single-transaction > /data/all.sql

創(chuàng)建個(gè)登錄用戶,并授權(quán):

由于之前在備份的時(shí)候加入了--master-data=1選項(xiàng),就添加了主從復(fù)制的選項(xiàng)000002文件的619位置往后開(kāi)始主從復(fù)制

000002文件619位置之前的配置由備份文件自行實(shí)現(xiàn)

接下來(lái)把備份的文件遠(yuǎn)程拷貝到Node4主機(jī)上:

scp /data/all.sql 192.168.114.40:/opt

從Node4上:

開(kāi)啟二進(jìn)制日志:

[root@Node4 ~]#:vim /etc/my.cnf
......
server-id=40
log-bin=/data/mysql/log/mysql-bin

建立路徑并重啟數(shù)據(jù)庫(kù):

[root@Node4 ~]#:mkdir /data/mysql/log/ -p
[root@Node4 ~]#:chown -R mysql.mysql /data
[root@Node4 ~]#:systemctl restart mysqld

這時(shí)先看一下數(shù)據(jù)庫(kù):是沒(méi)有hellodb數(shù)據(jù)庫(kù)的。

修改備份腳本:

vim /opt/all.sql

找到CHANGE MASTER TO這一行,做以下修改:

進(jìn)入數(shù)據(jù)庫(kù):把/opt/all.sql備份文件導(dǎo)入進(jìn)來(lái):source /opt/all.sql

開(kāi)啟從。查看從節(jié)點(diǎn)的狀態(tài)

再次查看數(shù)據(jù)庫(kù):

模擬故障:

我們?cè)趶纳辖o數(shù)據(jù)庫(kù)中的表teachers插入一條數(shù)據(jù):那么是第5條數(shù)據(jù)了

在主上也插入同樣的數(shù)據(jù):

按說(shuō)這一條應(yīng)該是第6條數(shù)據(jù)。

在從上查看節(jié)點(diǎn)狀態(tài):發(fā)現(xiàn)主從復(fù)制就失敗了。出現(xiàn)了一個(gè)錯(cuò)誤!

這時(shí)在主上再插入一條數(shù)據(jù):

這里的err按說(shuō)是第6條數(shù)據(jù),lisi是第7條數(shù)據(jù)。

由于前面的錯(cuò)誤,導(dǎo)致在從上就不會(huì)再顯示了,提示主鍵重復(fù),整個(gè)都down掉了。需要解決故障問(wèn)題。先看一下從上的表數(shù)據(jù):

通過(guò)show slave status\G;查看,顯示主鍵重復(fù)!

重啟一下,就是兩個(gè)yes了:start slave;

在主上插入一條數(shù)據(jù):

mysql> insert into teachers values(null,'lisi2',20,'M');
Query OK, 1 row affected (0.00 sec)

查看主上的數(shù)據(jù):

在從上查看是否有l(wèi)isi2:

mysql> select * from teachers;
+-----+---------------+-----+--------+
| TID | Name          | Age | Gender |
+-----+---------------+-----+--------+
|   1 | Song Jiang    |  45 | M      |
|   2 | Zhang Sanfeng |  94 | M      |
|   3 | Miejue Shitai |  77 | F      |
|   4 | Lin Chaoying  |  93 | F      |
|   5 | err           |  24 | F      |
|   6 | lisi          |  21 | M      |
|   7 | lisi2         |  20 | M      |
+-----+---------------+-----+--------+

同步了!

四、級(jí)聯(lián)

級(jí)聯(lián)與一主一從一樣,就在從后面再加一臺(tái)服務(wù)器。作為從

主1--主2--從1

主2上要做的操作:在/etc/my.cnf中最下面添加一個(gè):

[root@Node2 ~]#:vim /etc/my.cnf
......
log_slave_updates? ? #級(jí)聯(lián)操作必須加

由于中間的服務(wù)器是前面的從也是后面的主,對(duì)于后面來(lái)說(shuō),中間的這個(gè)也需要建立一個(gè)用戶:

mysql> grant replication slave on *.* to test@'192.168.114.%' identified by 'Admin@123';
Query OK, 0 rows affected, 1 warning (0.00 sec)
mysql> show master status;
+------------------+----------+--------------+------------------+-------------------+
| File             | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set |
+------------------+----------+--------------+------------------+-------------------+
| mysql-bin.000001 |      154 |              |                  |                   |
+------------------+----------+--------------+------------------+-------------------+
1 row in set (0.00 sec)

這樣是為了給后面從服務(wù)器指定節(jié)點(diǎn)。

后面可以跟兩臺(tái)從服務(wù)器:

在/etc/my.cnf中只需要配置一個(gè)server-id即可:

7-3:7-2上:show master stauts;
CHANGE MASTER TOMASTER_HOST='192.168.114.20',MASTER_USER='test',MASTER_PASSWORD='Admin@123',MASTER_PORT=3306,MASTER_LOG_FILE='mysql-bin.000001',MASTER_LOG_POS=154;
start slave;
7-4:7-2上:show master stauts;
CHANGE MASTER TOMASTER_HOST='192.168.114.20',MASTER_USER='test',MASTER_PASSWORD='Admin@123',MASTER_PORT=3306,MASTER_LOG_FILE='mysql-bin.000001',MASTER_LOG_POS=449;
start slave;

驗(yàn)證:

在Node1主上創(chuàng)建一個(gè)數(shù)據(jù)庫(kù)lxd;

在中間的從服務(wù)器(也是后面兩臺(tái)的主)也同步了Node1主的數(shù)據(jù):

Node1主創(chuàng)建數(shù)據(jù)庫(kù):

mysql> create database lxd;
Query OK, 1 row affected (0.00 sec)mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| lxd                |
| mysql              |
| performance_schema |
| sys                |
+--------------------+
5 rows in set (0.00 sec)

Node2從:(也是后面兩臺(tái)的主)

mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| lxd                |
| mysql              |
| performance_schema |
| sys                |
+--------------------+
5 rows in set (0.00 sec)

實(shí)現(xiàn)級(jí)聯(lián)同步!

---end---

http://aloenet.com.cn/news/32457.html

相關(guān)文章:

  • 怎么把網(wǎng)站做火網(wǎng)絡(luò)營(yíng)銷(xiāo)管理系統(tǒng)
  • 安平縣外貿(mào)網(wǎng)站建設(shè)正規(guī)微商免費(fèi)推廣軟件
  • 可以做網(wǎng)站的渠道廊坊seo關(guān)鍵詞排名
  • 隨州公司做網(wǎng)站營(yíng)銷(xiāo)案例分析報(bào)告模板
  • 網(wǎng)站建設(shè)一對(duì)一培訓(xùn)seo根據(jù)什么具體優(yōu)化
  • 網(wǎng)站風(fēng)格模板營(yíng)銷(xiāo)策劃的六個(gè)步驟
  • 網(wǎng)站建設(shè)流程策劃方案前端培訓(xùn)哪個(gè)機(jī)構(gòu)靠譜
  • 南通市網(wǎng)站建設(shè)我的完凡科網(wǎng)
  • 建湖做網(wǎng)站尋找鄭州網(wǎng)站優(yōu)化公司
  • 男女做爰高清免費(fèi)網(wǎng)站關(guān)鍵詞代發(fā)包收錄
  • 寶安網(wǎng)站建設(shè)公司968seo培訓(xùn)網(wǎng)的優(yōu)點(diǎn)是
  • 做網(wǎng)站網(wǎng)頁(yè)維護(hù) 手機(jī)App 開(kāi)發(fā)免費(fèi)打廣告網(wǎng)站
  • 網(wǎng)站托管適合中層管理的培訓(xùn)
  • 做網(wǎng)站是通過(guò)怎么掙錢(qián)一個(gè)新產(chǎn)品怎么推廣
  • 網(wǎng)頁(yè)設(shè)計(jì) 做網(wǎng)站的代碼制作網(wǎng)站大概多少錢(qián)
  • 互聯(lián)網(wǎng)行業(yè)新聞的靠譜網(wǎng)站怎么做屬于自己的網(wǎng)站
  • 凡科刪除建設(shè)的網(wǎng)站東莞疫情最新通知
  • 做網(wǎng)站銷(xiāo)售電話術(shù)語(yǔ)關(guān)鍵詞推廣是什么
  • 如何在國(guó)外做網(wǎng)站競(jìng)價(jià)賬戶托管公司哪家好
  • 為校園網(wǎng)站建設(shè)提供網(wǎng)站優(yōu)化排名公司哪家好
  • 寧波百度做網(wǎng)站的公司哪家好亞馬遜跨境電商開(kāi)店流程及費(fèi)用
  • 電商型企業(yè)網(wǎng)站建設(shè)品牌型網(wǎng)站制作價(jià)格
  • 企業(yè)內(nèi)部網(wǎng)站如何建設(shè)吉林網(wǎng)絡(luò)seo
  • 流量劫持網(wǎng)站怎么做磁力搜索引擎不死鳥(niǎo)
  • 公司官網(wǎng)怎么建立優(yōu)化大師客服電話
  • php網(wǎng)站的登陸注冊(cè)怎末做的深圳網(wǎng)站建設(shè)專業(yè)樂(lè)云seo
  • 業(yè)余從事網(wǎng)站開(kāi)發(fā)杭州seo按天計(jì)費(fèi)
  • 招聘網(wǎng)站建設(shè)維護(hù)人員設(shè)計(jì)公司排名前十強(qiáng)
  • 錦州網(wǎng)站建設(shè)哪家好seo策略有哪些
  • 金山建設(shè)機(jī)械網(wǎng)站seo研究中心超逸seo