<em id="0a85b"><option id="0a85b"></option></em>

<abbr id="0a85b"></abbr>

      <nobr id="0a85b"></nobr>
        <tr id="0a85b"></tr>
        9久久伊人精品综合,亚洲一区精品视频在线,成 人免费va视频,国产一区二区三区黄网,99国产精品永久免费视频,亚洲毛片多多影院,精品久久久无码人妻中文字幕,无码国产欧美一区二区三区不卡
        學習啦——學設計>網頁設計>網站建設>網站服務器管理>

        MySQL有哪些是重要復制_MySQL主復制有哪些

        時間: 宇民40 分享

          MySQL的數據庫的高可用性的架構大概有以下幾種:集群,讀寫分離,主備。而后面兩種都是通過復制來實現的。下面由學習啦小編為大家整理的,希望大家喜歡!

          MySQL主復制

          為什么使用主從復制?

          1、主服務器/從服務器設置增加了健壯性。主服務器出現問題時,你可以切換到從服務器作為備份。

          2、通過在主服務器和從服務器之間切分處理客戶查詢的負荷,可以得到更好的客戶響應時間。但是不要同時在主從服務器上進行更新,這樣可能引起沖突。

          3、使用復制的另一個好處是可以使用一個從服務器執行備份,而不會干擾主服務器。在備份過程中主服務器可以繼續處理更新。

          MySQL使用3個線程來執行復制功能(其中1個在主服務器上,另兩個在從服務器上。當發出START SLAVE時,從服務器創建一個I/O線程,以連接主服務器并讓主服務器發送二進制日志。主服務器創建一個線程將二進制日志中的內容發送到從服務器。從服務器I/O線程讀取主服務器Binlog Dump線程發送的內容并將該數據拷貝到從服務器數據目錄中的本地文件中,即中繼日志。第3個線程是SQL線程,從服務器使用此線程讀取中繼日志并執行日志中包含的更新。SHOW PROCESSLIST語句可以查詢在主服務器上和從服務器上發生的關于復制的信息。

          默認中繼日志使用host_name-relay-bin.nnnnnn形式的文件名,其中host_name是從服務器主機名,nnnnnn是序列號。用連續序列號來創建連續中繼日志文件,從000001開始。從服務器跟蹤中繼日志索引文件來識別目前正使用的中繼日志。默認中繼日志索引文件名為host_name-relay-bin.index。在默認情況,這些文件在從服務器的數據目錄中被創建。中繼日志與二進制日志的格式相同,并且可以用mysqlbinlog讀取。當SQL線程執行完中繼日志中的所有事件后,中繼日志將會被自動刪除。

          從服務器在數據目錄中另外創建兩個狀態文件--master.info和relay-log.info。狀態文件保存在硬盤上,從服務器關閉時不會丟失。下次從服務器啟動時,讀取這些文件以確定它已經從主服務器讀取了多少二進制日志,以及處理自己的中繼日志的程度。

          設置主從復制:

          1、確保在主服務器和從服務器上安裝的MySQL版本相同,并且最好是MySQL的最新穩定版本。

          2、在主服務器上為復制設置一個連接賬戶。該賬戶必須授予REPLICATION SLAVE權限。如果賬戶僅用于復制(推薦這樣做),則不需要再授予任何其它權限。

          mysql> GRANT REPLICATION SLAVE ON *.*

          -> TO 'replication'@'%.yourdomain.com' IDENTIFIED BY 'slavepass';

          3、執行FLUSH TABLES WITH READ LOCK語句清空所有表和塊寫入語句:

          mysql> FLUSH TABLES WITH READ LOCK;

          保持mysql客戶端程序不要退出。開啟另一個終端對主服務器數據目錄做快照。

          shell> cd /usr/local/mysql/

          shell> tar -cvf /tmp/mysql-snapshot.tar ./data

          如果從服務器的用戶賬戶與主服務器的不同,你可能不想復制mysql數據庫。在這種情況下,應從歸檔中排除該數據庫。你也不需要在歸檔中包括任何日志文件或者master.info或relay-log.info文件。

          當FLUSH TABLES WITH READ LOCK所置讀鎖定有效時(即mysql客戶端程序不退出),讀取主服務器上當前的二進制日志名和偏移量值:

          mysql > SHOW MASTER STATUS;

          +---------------+----------+--------------+------------------+

          | File | Position | Binlog_Do_DB | Binlog_Ignore_DB |

          +---------------+----------+--------------+------------------+

          | mysql-bin.003 | 73 | test | manual,mysql |

          +---------------+----------+--------------+------------------+

          File列顯示日志名,而Position顯示偏移量。在該例子中,二進制日志值為mysql-bin.003,偏移量為73。記錄該值。以后設置從服務器時需要使用這些值。它們表示復制坐標,從服務器應從該點開始從主服務器上進行新的更新。

          如果主服務器運行時沒有啟用--logs-bin,SHOW MASTER STATUS顯示的日志名和位置值為空。在這種情況下,當以后指定從服務器的日志文件和位置時需要使用的值為空字符串('')和4.

          取得快照并記錄日志名和偏移量后,回到前一中端重新啟用寫活動:

          mysql> UNLOCK TABLES;

          4、確保主服務器主機上my.cnf文件的[mysqld]部分包括一個log-bin選項。該部分還應有一個server-id=Master_id選項,其中master_id必須為1到232–1之間的一個正整數值。例如:

          [mysqld]

          log-bin

          server-id=1

          如果沒有提供那些選項,應添加它們并重啟服務器。

          5、停止從服務器上的mysqld服務并在其my.cnf文件中添加下面的行:

          [mysqld]

          server-id=2

          slave_id值同Master_id值一樣,必須為1到232–1之間的一個正整數值。并且,從服務器的ID必須與主服務器的ID不相同。

          6、將數據備據目錄中。確保對這些文件和目錄的權限正確。服務器 MySQL運行的用戶必須能夠讀寫文件,如同在主服務器上一樣。

          Shell> chown -R mysql:mysql /usr/local/mysql/data

          7、啟動從服務器。在從服務器上執行下面的語句,用你的系統的實際值替換選項值:

          mysql> CHANGE MASTER TO

          -> MASTER_HOST='master_host_name',

          -> MASTER_USER='replication_user_name',

          -> MASTER_PASSWORD='replication_password',

          -> MASTER_LOG_FILE='recorded_log_file_name',

          -> MASTER_LOG_POS=recorded_log_position;

          8、啟動從服務器線程:

          mysql> START SLAVE;

          執行這些程序后,從服務器應連接主服務器,并補充自從快照以來發生的任何更新。

          9、如果出現復制錯誤,從服務器的錯誤日志(HOSTNAME.err)中也會出現錯誤消息。

          10、從服務器復制時,會在其數據目錄中發現文件master.info和HOSTNAME-relay-log.info。從服務器使用這兩個文件跟蹤已經處理了多少主服務器的二進制日志。不要移除或編輯這些文件,除非你確切知你正在做什么并完全理解其意義。即使這樣,最好是使用CHANGE MASTER TO語句。

          MySQL使用方法

          1、 isnull();函數

          在SQL Server 中經常會遇到一些字段為空值,這里可以使用isnull()這個函數來做判斷;eg:

          select isnull(Table_column,'Test') as column from Table

          這個語句意思就是:從Table表中取字段Table_column,如果該字段值為空,則用“Test”字符來代替;

          2、SQL Server 2008工具使用;

          新建立一個數據庫表時,當建立好了,但又要修改,有時候DB會阻止對表結構的修改,需要設置如下:

          SQLServer----"tool"----"option"----"Designers"----"prevent saving changes that require table recreating" 去掉這個“阻止修改”選項;

          3、nvarchar(Max)

          SQL Server 中Max是最大值,其定義是4000,nvarchar(Max) 其實就是nvarchar(4000);

          4、select * from table

          在數據庫中,一般小數據量的select * from table 不會發覺有什么慢,但是一旦到了大數據量的數據庫中,這種查詢是最慢的最耗時間的!數據庫的開銷會很大!

          所以不要輕易的在大數據表上執行不帶條件的select cout(*) from table,不僅耗時大,而且會把這個數據庫表上S鎖,在cout(*)期間,任何有關和該表的insert update delete都會被阻止!!!

          5、getdate()

          getdate()函數用于獲得當前系統的系統時間這個精確到了毫秒:eg:"2013-12-12 12:23:33:321"

          6、newid()

          這個不用多說了,做主鍵ID時最常用了,此函數可以生成一個唯一的guid,32位長,這個強度大,而且由數據庫系統生成,具有唯一性!

          Mysql大小寫講解

          一、1 CREATE TABLE NAME(name VARCHAR(10));

          對這個表,缺省情況下,下面兩個查詢的結果是一樣的:

          代碼如下:

          SELECT * FROM TABLE NAME WHERE name='clip';

          SELECT * FROM TABLE NAME WHERE name='Clip';

          MySql默認查詢是不區分大小寫的,如果需要區分他,必須在建表的時候,Binary標示敏感的屬性.

          代碼如下:

          CREATE TABLE NAME(

          name VARCHAR(10) BINARY

          );

          2 在SQL語句中實現 SELECT * FROM TABLE NAME WHERE BINARY name='Clip';

          3 設置字符集:

          utf8_general_ci --不區分大小寫

          utf8_bin--區分大小寫

          二、 MySQL在windows下是不區分大小寫的

          將script文件導入MySQL后表名也會自動轉化為小寫,結果再 想要將數據庫導出放到linux服務器中使用時就出錯了。因為在linux下表名區分大小寫而找不到表,查了很多都是說在linux下更改MySQL的設置使其也不區分大小寫,但是有沒有辦法反過來讓windows 下大小寫敏感呢。其實方法是一樣的,相應的更改windows中MySQL的設置就行了。

          具體操作:

          在MySQL的配置文件my.ini中增加一行:

          lower_case_table_names = 0

          其中 0:區分大小寫,1:不區分大小寫

          MySQL在Linux下數據庫名、表名、列名、別名大小寫規則是這樣的:

          1、數據庫名與表名是嚴格區分大小寫的;

          2、表的別名是嚴格區分大小寫的;

          3、列名與列的別名在所有的情況下均是忽略大小寫的;

          4、變量名也是嚴格區分大小寫的;

          MySQL在Windows下都不區分大小寫

        MySQL有哪些是重要復制_MySQL主復制有哪些

        MySQL的數據庫的高可用性的架構大概有以下幾種:集群,讀寫分離,主備。而后面兩種都是通過復制來實現的。下面由學習啦小編為大家整理的,希望大家喜歡! MySQL主復制 為什么使用主從復制? 1、主服務器/從服務器設置增加了健壯性。主服務器出現問題時,你可以
        推薦度:
        點擊下載文檔文檔為doc格式

        精選文章

        • MySQL常用的教程方法_MySQL初級教程有哪些方法
          MySQL常用的教程方法_MySQL初級教程有哪些方法

          MySQL是一個關系型數據庫管理系統,MySQL 是最流行的關系型數據庫管理系統之一。下面由學習啦小編為大家整理的MySQL初級教程,希望大家喜歡! MySQL初級教

        • 網站服務器租用價格
          網站服務器租用價格

          影響網站服務器租用價格的因素很多,如服務器線路,服務器機房,服務商的服務水平等等很多因素。那你知道網站服務器的租用價格一般是多少嗎?以下

        • 愛情唯美傷感高清圖片有哪些
          愛情唯美傷感高清圖片有哪些

          唯美是人們審美需求的產物,是工筆畫固有的審美特征,隨著社會的發展和演變而不斷豐富和充實,在審美傳統的延續和發展中有著不可替代位置。下面是學習

        • 室內綠化裝飾設計方案圖有哪些
          室內綠化裝飾設計方案圖有哪些

          綠化設計理念是一種維護生態文明的設計觀,是在室內設計中重視并貫穿綠色生態理念,創造一種無污染,有利于人體健康的生態環境。下面是學習啦小編

        26865 主站蜘蛛池模板: 国产在线精品一区二区夜色| 97久久超碰国产精品旧版| 久久精品夜色噜噜亚洲av| 国产精品国产精品偷麻豆| 亚洲中文字幕第二十三页| 丰满少妇又爽又紧又丰满在线观看| 国产丝袜丝视频在线观看| 99riav国产精品视频| 免费三A级毛片视频| 国产综合视频精品一区二区| 国产最大成人亚洲精品| 久热这里只精品视频99| 中文字幕精品人妻av在线| 久久精品国产热久久精品国产亚洲| 亚洲第一精品一二三区| 久久99精品久久久久久动态图| 日韩精品国产二区三区| 医院人妻闷声隔着帘子被中出| 国产区精品福利在线熟女| 精品一区二区三区在线观看l| 国产成人无码A区在线观看视频| 真人在线射美女视频在线观看| 久久婷婷五月综合97色直播 | 免费国产一级特黄aa大片在线| 国产二区三区不卡免费| 无码欧美毛片一区二区三| 4hu四虎永久在线观看| 成人国产精品日本在线观看| 99er久久国产精品先锋| 亚洲欧美日韩愉拍自拍美利坚| а√天堂8在线官网| 欧美交a欧美精品喷水| 国产欧美日韩视频一区二区三区| 377P欧洲日本亚洲大胆| 国内久久久久久久久久| 成人午夜福利精品一区二区| 免费看国产精品3a黄的视频| 国产精品老熟女一区二区| 秋霞电影网| 亚洲色无码中文字幕手机在线 | 亚洲成在人线AV品善网好看|