linux環(huán)境下載mysql安裝及主從復(fù)制

一、安裝配置mysql

  • 1、新建文件琼开、配置倉庫源
編輯創(chuàng)建mariadb.repo倉庫文件
vi /etc/yum.repos.d/MariaDB.repo
  • 2、添加repo倉庫配置
[mariadb]
name = MariaDB
baseurl = http://yum.mariadb.org/10.1/centos7-amd64
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
gpgcheck=1
  • 3枕荞、下載
    yum install MariaDB-server MariaDB-client -y

  • 4柜候、啟動(dòng)
    systemctl start mariadb(通過yum下載的,可以使用systemctl管理)

  • 5躏精、初始化
    mysql_secure_installation

    1.1mysql初始化.png

  • 6渣刷、登錄
    mysql -uroot -p
    密碼

  • 7、修改密碼
    set password = PASSWORD('redhat123');

  • 8矗烛、創(chuàng)建普通用戶辅柴,遠(yuǎn)程登錄

創(chuàng)建用戶
  create user '用戶名'@'%' identified by '密碼';
給新用戶授權(quán):
  grant all privileges on *.* to '用戶名'@'%' identified by '密碼';
刷新權(quán)限:
  flush privileges;
使用cdm終端登錄驗(yàn)證:
  mysql -u用戶名 -p -h 10.0.0.10      輸入密碼
  • 9、新用戶沒授權(quán)瞭吃,會(huì)有權(quán)限限制
MariaDB [(none)]>證明沒有使用數(shù)據(jù)庫

use mysql;      Access denied for user 'xxx'@'%' to database 'mysql'
新建的普通用戶沒有權(quán)限碌嘀,需要切換到root用戶。

root用戶下:
    use mysql;         
    Database change        
    MariaDB [mysql]>證明已使用mysql
查看創(chuàng)建的用戶:
    select host,user,password from user where user='hui';
  • 10歪架、權(quán)限
    對用戶開通所有的權(quán)限:grant all privileges on *.* to username@'%';
    查看用戶的權(quán)限:show grants for username@'%';
    移除權(quán)限(使用root用戶):revoke all privileges on *.* from username@'%';

  • 11股冗、設(shè)置編碼 (mysql的配置文件,在Linux中是my.cnf在 windows中是my.ini)
    vim /etc/my.cnf寫入配置:

[mysqld]
character-set-server=utf8
collation-server=utf8_general_ci
log-error=/var/log/mysqld.log
[client]
default-character-set=utf8
[mysql]
default-character-set=utf8

修改完配置文件和蚪,需要重啟mysql止状,使得生效
systemctl stop mariadb 
systemctl start mariadb 
查看編碼相關(guān)信息:\s  (進(jìn)去后執(zhí)行)
  • 12、關(guān)閉防火墻
mysql遠(yuǎn)程登錄授權(quán)配置:
    注意攒霹!關(guān)閉防火墻导俘。、剔蹋。。辅髓。泣崩。這樣就不會(huì)再出莫名其妙的bug了少梁。。矫付。
    iptables -F  #清空防火墻規(guī)則
    #關(guān)閉防火墻 
    systemctl stop firewalld
    #永久關(guān)閉防火墻開機(jī)自啟
    systemctl disable firewalld
  • 13凯沪、mysql的備份和恢復(fù)
創(chuàng)建數(shù)據(jù)庫:create database s12;
備份:mysqldump -u root -p --all-databases > /tmp/db.dump
刪除:drop database s12;
恢復(fù)(兩種方式):
    1.登錄數(shù)據(jù)庫后:source /tmp/db.dump    
    2.在登錄時(shí)候,進(jìn)行數(shù)據(jù)寫入:mysql -uroot -p < /tmp/db.dump
  • 14买优、查看端口號是否被占用
    lsof -i:3306
    netstat -tunlp|grep 3306

二妨马、mysql主從復(fù)制

主從復(fù)制,就是為了數(shù)據(jù)庫安全杀赢『娑澹‘主數(shù)據(jù)庫’寫入,‘從數(shù)據(jù)庫’可以檢測到并更新(兩個(gè)不同的機(jī)器)脂崔。

(1) master將改變記錄到二進(jìn)制日志(binary log)中(這些記錄叫做二進(jìn)制日志事件滤淳,binary log events);
(2) slave將master的binary log events拷貝到它的中繼日志(relay log)砌左;
(3) slave重做中繼日志中的事件脖咐,將改變反映它自己的數(shù)據(jù)

  • 1、master主庫設(shè)置
1汇歹,要配置文件就得先停掉進(jìn)程
   查看數(shù)據(jù)庫狀態(tài):systemctl status mariadb
   停mariadb:systemctl stop mariadb
                    
2屁擅,修改配置文件
   server-id服務(wù)的唯一標(biāo)識(主從之間都必須不同);log-bin啟動(dòng)二進(jìn)制日志名稱為mysql-bin 
    vim /etc/my.cnf
            
    [mysqld]
    server-id=1
    log-bin=mysql-bin
            
    重啟mariadb
    systemctl start mariadb
            
3产弹,再裝一個(gè)虛擬機(jī)模擬"從機(jī)器數(shù)據(jù)庫"
    一樣的root用戶root1234(虛擬機(jī)的root用戶和數(shù)據(jù)庫的root用戶不要搞混)
        
4派歌,查看master的狀態(tài):show master status;         binary log文件的行數(shù)從313行開始
    File是二進(jìn)制日志文件名,Position 是日志開始的位置取视。后面從庫會(huì)用到 后面從庫會(huì)用到 O踉怼!
        +------------------+----------+--------------+------------------+
        | File             | Position | Binlog_Do_DB | Binlog_Ignore_DB |
        +------------------+----------+--------------+------------------+
        | mysql-bin.000001 |      313 |              |                  |
        +------------------+----------+--------------+------------------+
        
5作谭,master主庫添加從庫賬號
    1.新建用于主從同步的用戶huige,允許登錄的從庫是'%'
        create user 'huige'@'%' identified by 'huige';
        1.1.題外話:如果提示密碼太簡單不復(fù)合策略加在前面加這句
            mysql> set global validate_password_policy=0;
            
    2稽物,給從庫賬號授權(quán),說明給huige從庫復(fù)制的權(quán)限,在任何機(jī)器上復(fù)制
        grant replication slave on *.* to 'huige'@'%';          
            
    3折欠,檢查主庫創(chuàng)建的賬號信息
        select user,host from mysql.user;
            +---------+-----------+
            | user    | host      |
            +---------+-----------+
            | huige   | %         |
            | root    | 127.0.0.1 |
            | root    | ::1       |
            | root    | localhost |
            +---------+-----------+
            
    4贝或,檢查授權(quán)賬號的權(quán)限
        show grants for huige@'%';
            
6,實(shí)現(xiàn)對主數(shù)據(jù)庫鎖表只讀锐秦,防止數(shù)據(jù)寫入咪奖,數(shù)據(jù)復(fù)制失敗
   flush table with read lock;
   unlock tables;解鎖;
        
7酱床,鎖表后羊赵,一定要單獨(dú)再打開一個(gè)SSH窗口,導(dǎo)出數(shù)據(jù)庫的所有數(shù)據(jù),用于從數(shù)據(jù)庫的寫入
   [root@my ~ 19:32:45]#mysqldump -uroot -p  --all-databases > /tmp/all.dump
            
8昧捷,登錄新建的從虛擬機(jī)闲昭,slave   進(jìn)行網(wǎng)卡配置,重啟網(wǎng)卡靡挥,等初始化
        
9序矩,將主庫的數(shù)據(jù)備份文件,scp到從庫機(jī)器上跋破,然后從庫mysql導(dǎo)入數(shù)據(jù)
   scp /tmp/all.dump root@10.0.0.11:/opt/
            
10簸淀,副虛擬機(jī)安裝mysql:
   yum install mariadb-server
   啟動(dòng)一下
   systemctl start mariadb
  • 2、slave從庫設(shè)置
1毒返,登錄數(shù)據(jù)庫租幕,為保持?jǐn)?shù)據(jù)一致性,導(dǎo)入數(shù)據(jù)
    source /opt/all.dump
            
2饿悬,配置從數(shù)據(jù)庫的配置文件:
    vi /etc/my.cnf
            
    [mysqld]
    server-id=3
3令蛉,重啟:systemctl restart mariadb
    
4,再次登錄從庫狡恬,就需要輸入密碼了珠叔,因?yàn)橹鲙斓拿艽a都倒過來了
    mysql -uroot -p   (root用戶)  密碼:和主庫密碼一樣

5,主庫查看是否開啟了二進(jìn)制日志功能:
    show variables like 'log_bin';
    +---------------+-------+
    | Variable_name | Value |
    +---------------+-------+
    | log_bin       | ON    |
    +---------------+-------+
    查看server_id
    show variables like 'server_id';
        
6弟劲, 查看一下主服務(wù)器的狀態(tài):
    show master status;
    +------------------+----------+--------------+------------------+
    | File             | Position | Binlog_Do_DB | Binlog_Ignore_DB |
    +------------------+----------+--------------+------------------+
    | mysql-bin.000002 |      327 |              |                  |
    +------------------+----------+--------------+------------------+
    從機(jī)執(zhí)行命令:
        change master to master_host='10.0.0.10',
        master_user='huige',
        master_password='huige',
        master_log_file='mysql-bin.000002',
        master_log_pos=327;

7祷安, 啟動(dòng)從庫的同步開關(guān),測試主從復(fù)制的情況
        start slave;
  • 3兔乞、測試查看
1汇鞭, 查看復(fù)制狀態(tài)
        show slave status\G;
    這兩個(gè)參數(shù)都是yes,代表主從同步成功:
        Slave_IO_Running: Yes
        Slave_SQL_Running: Yes
            
2庸追, 在主服務(wù)器上show databases;    create databases s11111;
    在從服務(wù)器上show databases;    即可查看霍骄,也有此數(shù)據(jù)庫。
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末淡溯,一起剝皮案震驚了整個(gè)濱河市读整,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌咱娶,老刑警劉巖米间,帶你破解...
    沈念sama閱讀 212,686評論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異膘侮,居然都是意外死亡屈糊,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,668評論 3 385
  • 文/潘曉璐 我一進(jìn)店門琼了,熙熙樓的掌柜王于貴愁眉苦臉地迎上來逻锐,“玉大人,你說我怎么就攤上這事∏ィ” “怎么了慷丽?”我有些...
    開封第一講書人閱讀 158,160評論 0 348
  • 文/不壞的土叔 我叫張陵,是天一觀的道長鳄哭。 經(jīng)常有香客問我,道長纲熏,這世上最難降的妖魔是什么妆丘? 我笑而不...
    開封第一講書人閱讀 56,736評論 1 284
  • 正文 為了忘掉前任,我火速辦了婚禮局劲,結(jié)果婚禮上勺拣,老公的妹妹穿的比我還像新娘。我一直安慰自己鱼填,他們只是感情好药有,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,847評論 6 386
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著苹丸,像睡著了一般愤惰。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上赘理,一...
    開封第一講書人閱讀 50,043評論 1 291
  • 那天宦言,我揣著相機(jī)與錄音,去河邊找鬼商模。 笑死奠旺,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的施流。 我是一名探鬼主播响疚,決...
    沈念sama閱讀 39,129評論 3 410
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼瞪醋!你這毒婦竟也來了忿晕?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 37,872評論 0 268
  • 序言:老撾萬榮一對情侶失蹤趟章,失蹤者是張志新(化名)和其女友劉穎杏糙,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體蚓土,經(jīng)...
    沈念sama閱讀 44,318評論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡宏侍,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,645評論 2 327
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了蜀漆。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片谅河。...
    茶點(diǎn)故事閱讀 38,777評論 1 341
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出绷耍,到底是詐尸還是另有隱情吐限,我是刑警寧澤,帶...
    沈念sama閱讀 34,470評論 4 333
  • 正文 年R本政府宣布褂始,位于F島的核電站诸典,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏崎苗。R本人自食惡果不足惜狐粱,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 40,126評論 3 317
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望胆数。 院中可真熱鬧肌蜻,春花似錦、人聲如沸必尼。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,861評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽判莉。三九已至豆挽,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間骂租,已是汗流浹背祷杈。 一陣腳步聲響...
    開封第一講書人閱讀 32,095評論 1 267
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留渗饮,地道東北人但汞。 一個(gè)月前我還...
    沈念sama閱讀 46,589評論 2 362
  • 正文 我出身青樓,卻偏偏與公主長得像互站,于是被迫代替她去往敵國和親私蕾。 傳聞我的和親對象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,687評論 2 351

推薦閱讀更多精彩內(nèi)容