環境介紹:html
archlinux-2015-11-15版本mysql
mariadblinux
navicatsql
具體步驟:數據庫
1.編輯my.cnf,本環境的路徑爲/etc/mysql/my.cnfvim
---ps 建議安裝vim,使用起來方便舒服緩存
找到mysqld組下面,安全
這個是master ,主庫服務器
另外二進制的路徑文件須要建立一下,並賦予權限併發
#mkdir -p /data/binlogs
#chown -R mysql:mysql /data/binlogs
2.一樣須要修改從庫的配置文件
3.進入主庫
建立能夠複製的用戶權限給從庫
進入從庫,連接到主庫
表示數據庫已經連上。
# /usr/share/mysql/my-huge.cnf
# MariaDB 配置文件 示例模板(huge,巨型).
#
# 本文件適用於專用數據庫服務器, 內存爲 1G-2G
# 機器上主要只運行 MariaDB的大型系統 ,
#
# MariaDB 程序會根據運行的操做系統平臺查找一系列的配置文件,
# 你能夠將此模板配置文件拷貝到對應的位置(並重命名),
# 要查看有哪些配置文件會被讀取到,執行:
# 'my_print_defaults --help' 並查看
# Default options are read from the following files in the given order:
# (--> 程序會依次讀取列出的配置文件.) 這部分下面列出的文件(路徑)列表.
# 更多信息請參考: http://dev.mysql.com/doc/mysql/en/option-files.html
#
# 在本文件的各個小節中,你可使用該程序支持的全部選項.
# 若是想要了解程序是否支持某個參數,
# 可使用 "--help" 選項來啓動該程序,查看幫助信息.
# 下面一小節的配置選項由本地的全部 MySQL 客戶端讀取,做爲默認配置
[client]
#password = your_password
port = 3306
socket = /var/lib/mysql/mysql.sock
# 下面的各個小節,由各類應用程序來讀取解析
# MySQL server 配置信息
[mysqld]
port = 3306
socket = /var/lib/mysql/mysql.sock
skip-external-locking
key_buffer_size = 384M
max_allowed_packet = 1M
table_open_cache = 512
sort_buffer_size = 2M
read_buffer_size = 2M
read_rnd_buffer_size = 8M
myisam_sort_buffer_size = 64M
thread_cache_size = 8
query_cache_size = 32M
# 併發線程數,建議爲CPU核心數乘以2: CPU's*2 for thread_concurrency
thread_concurrency = 8
# 能夠指定一個專用磁盤的路徑來做爲臨時目錄,例如 SSD
#tmpdir = /tmp/
# 配置此參數則不啓動 TCP/IP 端口 監聽.
# 若是全部的處理程序都只在同一臺機器上鍊接 mysqld, 這是一個很安全的作法,
# 全部同 mysqld 的交互只能經過Unix sockets 或命名管道(named pipes)完成.
# 注意,使用此選項而沒有開啓Windows上的命名管道(named pipes),
# (經過 "enable-named-pipe" 配置項) 將會致使 mysqld 不可用!
#skip-networking
# 主服務器配置選項 Replication Master Server (default)
# 在主從複製時,須要依賴二進制日誌
log-bin=mysql-bin
# 在整個主從複製集羣中要求是 1 到 2^32 - 1 之間的惟一ID, 不然或者失敗,或者大量出錯日誌信息.
# 若是沒有設置 master-host,則默認值是 1
# 但若是省略了,則(master)不生效
server-id = 1
# 從服務器配置選項 Replication Slave (須要將 master 部分註釋掉,才能使用這部分)
#
# 要將服務器配置爲從屬服務器(replication slave),
# 有以下兩種方案可供選擇 :
#
# 1) 經過 CHANGE MASTER TO 命令 (在用戶手冊中有詳細的描述) -
# 語法以下:
#
# CHANGE MASTER TO MASTER_HOST=<host>, MASTER_PORT=<port>,
# MASTER_USER=<user>, MASTER_PASSWORD=<password> ;
#
# 你能夠將 <host>, <user>, <password> 替換爲單引號括起來的字符串,
# 將 <port> 替換爲 master 的端口號 (默認是 3306).
#
# 一個示例以下所示:
#
# CHANGE MASTER TO MASTER_HOST='125.564.12.1', MASTER_PORT=3306,
# MASTER_USER='joe', MASTER_PASSWORD='secret';
#
# 或者:
#
# 2) 設置下面的參數. 然而, 一旦你選擇了這種方式,
# 首次啓動主從複製時 (即使啓動複製失敗, 如錯誤的 master-password 密碼,
# 致使 slave 鏈接不上等), slave 將會建立一個名爲 master.info 的文件,
# 若是之後再修改本配置文件(xxx.cnf)中下面的這些參數, 則將被忽略,
# 並繼續使用 master.info 文件的內容,
# 除非關閉 slave 服務器, 而後刪除文件 master.info 並從新啓動 slaver server.
# 出於這個緣由, 你應該不繫統修改下面的相關參數參數(帶 <> 的註釋部分),
# 而是使用 CHANGE MASTER TO (上面的方案1)
#
#
# 在整個主從複製集羣中要求是 2 到 2^32 - 1 之間的惟一ID,
# 不然或者失敗,或者大量出錯日誌信息.
# 若是設置了 master-host,則默認值是 2
# 但若是省略了,則不會成爲 slave
#server-id = 2
#
# 此slave 須要鏈接的 master. - required
#master-host = <hostname>
#
# slave鏈接到 master 認證時須要的 username
# - 用戶名是必須的(也能夠在鏈接時指定)
#master-user = <username>
#
# slave鏈接到 master 認證時須要的 password
# - 密碼是必須的(也能夠在鏈接時指定)
#master-password = <password>
#
# master 監聽的端口號
# 可選 - 默認是 3306
#master-port = <port>
#
# 開啓二進制日誌, 對於slave從服務器不是必須的,但推薦開啓
#log-bin=mysql-bin
#
# 二進制日誌格式 —— 推薦 mixed
#binlog_format=mixed
# 若是隻使用 InnoDB 表, 請取消下列選項的註釋
#innodb_data_home_dir = /var/lib/mysql
#innodb_data_file_path = ibdata1:2000M;ibdata2:10M:autoextend
#innodb_log_group_home_dir = /var/lib/mysql
# 若是隻使用 InnoDB,能夠設置 .._buffer_pool_size 爲物理內存的 50 - 80 %
# 謹防內存使用設置得過高
#innodb_buffer_pool_size = 384M
# 附加緩存池大小
#innodb_additional_mem_pool_size = 20M
# 設置 .._log_file_size 爲 buffer pool size 的 25 % 左右
#innodb_log_file_size = 100M
# 日誌緩存的大小,不要設置太大,1秒鐘刷新一次
#innodb_log_buffer_size = 8M
# 默認1,事務提交就刷新日誌到硬盤;
# 設爲2,刷新到操做系統緩存,但性能提升不少,設爲 0 則可能丟事務.
#innodb_flush_log_at_trx_commit = 1
# 表死鎖的超時釋放時間,單位秒
#innodb_lock_wait_timeout = 50
[mysqldump]
# 快速導出到輸出流/硬盤,不在內存中緩存
quick
# 最大數據包限制
max_allowed_packet = 16M
[mysql]
no-auto-rehash
# 若是對 SQL不熟悉,能夠將下面的註釋符去掉,拒絕無where的不安全操做.
#safe-updates
[myisamchk]
key_buffer_size = 256M
sort_buffer_size = 256M
read_buffer = 2M
write_buffer = 2M
[mysqlhotcopy]
interactive-timeout