乡下人产国偷v产偷v自拍,国产午夜片在线观看,婷婷成人亚洲综合国产麻豆,久久综合给合久久狠狠狠9

  • <output id="e9wm2"></output>
    <s id="e9wm2"><nobr id="e9wm2"><ins id="e9wm2"></ins></nobr></s>

    • 分享

      MySQL5.6與MySQL5.7安裝的區(qū)別

       悅光陰 2020-12-11

      一.MySQL5.6與MySQL5.7安裝的區(qū)別

      • 1、cmake的時(shí)候加入了boost 下載boost.org
      • 2、初始化時(shí) cd /application/mysql/bin/mysql 使用mysqld --initialize 替代mysql_install_db,其它參數(shù)沒有變化:--user= --basedir= --datadir=
      • 3、--initialize會(huì)生成一個(gè)臨時(shí)密碼
      • 4、還可以用另外一個(gè)參數(shù)--initialize-insecure (加上生不成密碼)

      mysql 5.7使用弱密碼

      validate_password_length 8 # 密碼的最小長(zhǎng)度,此處為8。
      validate_password_mixed_case_count 1 # 至少要包含小寫或大寫字母的個(gè)數(shù),此處為1。
      validate_password_number_count 1 # 至少要包含的數(shù)字的個(gè)數(shù),此處為1。
      validate_password_policy MEDIUM # 強(qiáng)度等級(jí),其中其值可設(shè)置為0、1、2。分別對(duì)應(yīng):
      【0/LOW】:只檢查長(zhǎng)度。
      【1/MEDIUM】:在0等級(jí)的基礎(chǔ)上多檢查數(shù)字、大小寫、特殊字符。
      【2/STRONG】:在1等級(jí)的基礎(chǔ)上多檢查特殊字符字典文件,此處為1。
      validate_password_special_char_count 1 # 至少要包含的個(gè)數(shù)字符的個(gè)數(shù),此處為1。
      
      [root@db02 mysql-5.7.20]# yum install -y gcc gcc-c++ automake autoconf
      [root@db02 mysql-5.7.20]# yum install make cmake bison-devel ncurses-devel libaio-devel
      [root@db02 mysql-5.7.20]#
      wget httpss://dl.bintray.com/boostorg/release/1.65.1/source/boost_1_59_0.tar.gz
      #登錄boost.org下載也可以
      [root@db02 mysql-5.7.20]# tar xf boost_1_59_0.tar.gz -C /usr/local/
      [root@db02 mysql-5.7.20]#
      cmake . -DCMAKE_INSTALL_PREFIX=/application/mysql-5.7.20 -DMYSQL_DATADIR=/application/mysql-5.7.20/data -DMYSQL_UNIX_ADDR=/application/mysql-5.7.20/tmp/mysql.sock -DDOWNLOAD_BOOST=1 -DWITH_BOOST=/usr/local/boost_1_59_0 -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_EXTRA_CHARSETS=all -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_FEDERATED_STORAGE_ENGINE=1 -DWITH_BLACKHOLE_STORAGE_ENGINE=1 -DWITHOUT_EXAMPLE_STORAGE_ENGINE=1 -DWITH_ZLIB=bundled -DWITH_SSL=bundled -DENABLED_LOCAL_INFILE=1 -DWITH_EMBEDDED_SERVER=1 -DENABLE_DOWNLOADS=1 -DWITH_DEBUG=0 
      

      ?

      生成密碼位置不一樣

      select user,host passwd from mysql.user

      查看有沒有密碼

      5.6

      mysql 5.7

      二.MySQL用戶權(quán)限管理

      • 1.MySQL用戶基礎(chǔ)操作

      Linux用戶的作用:

      • 1)登陸系統(tǒng)
      • 2)管理系統(tǒng)文件

      Linux用戶管理:

      • 1)創(chuàng)建用戶:useradd adduser
      • 2)刪除用戶:userdel
      • 3)修改用戶:usermod

      MySQL用戶的作用:

      • 1)登陸MySQL數(shù)據(jù)庫
      • 2)管理數(shù)據(jù)庫對(duì)象

      MySQL用戶管理:

      • 1)創(chuàng)建用戶:create user
      #創(chuàng)建用戶
      create user zls@'%';
      #創(chuàng)建用戶同時(shí)給密碼(5.7)如果用戶不存在沒法使用grant
      create user qls@'%' identified by '123';
      grant all on *.* to qls@'%';
      
      • 2)刪除用戶:delete user drop user (user這里是一個(gè)命令,不是一個(gè)用戶)
      mysql> drop user root@'db02';
      Query OK, 0 rows affected (0.00 sec)
      mysql> drop user ''@'db02';
      Query OK, 0 rows affected (0.00 sec)
      
      • )修改用戶:update alter grant
      mysql> update mysql.user set password=PASSWORD('123') where user='root' and
      host='localhost';
      #進(jìn)入庫,在操作
      

      用戶的定義:

        1. username@’主機(jī)域’

        root@'%'select

        root@'%' 超級(jí)用戶

        root@'172.0.0.0' 超級(jí)用戶

      • 2)主機(jī)域:可以理解為是MySQL登陸的白名單

      • 3)主機(jī)域格式:

        • ’10.0.0.51’
        • ’10.0.0.5%’
        • ’10.0.0.%’
        • ’10.0.%.%’
        • ’10.%.%.%’
        • ‘%’
        • ‘db01’
        • ’10.0.0.51/255.255.255.0’
        • ’10.0.0.0/24 不能用,不識(shí)別

      用戶管理實(shí)戰(zhàn)

      剛裝完MySQL數(shù)據(jù)庫該做的事情

      • 1、設(shè)定初始密碼(root@localhost)
      [root@db02 mysql-5.7.20]# mysqladmin -uroot -p password 'oldboy123'
      
      • 2、修改密碼
      • 3、使用密碼登陸
      [root@db02 mysql-5.7.20]# mysql -uroot -p123
      
      • 4、清理無用的用戶

      誤刪除了所有用戶

      #關(guān)閉數(shù)據(jù)庫
      [root@db02 mysql-5.7.20]# /etc/init.d/mysqld stop #通用
      #啟動(dòng)數(shù)據(jù)庫
      [root@db02 mysql-5.7.20]# mysqld_safe --skip-grant-tables --skip-networking &
      #跳過授權(quán)表,跳過網(wǎng)路,只能sockect連接,不能tcp\ip連接
      #使用mysql庫
      mysql> use mysql
      
      #錯(cuò)誤方法1、創(chuàng)建root用戶
      mysql> create user root@’localhost’;
      #錯(cuò)誤方法2、創(chuàng)建root用戶
      mysql> insert into user(user,host,password) values('root','10.0.0.55',PASSWORD('123'));
      #錯(cuò)誤方法
      mysql> insert into user(user,host,password,ssl_cipher,x509_issuer,x509_subject)
      values('root','localhost',PASSWORD('123'),'null','null','null');
      #沒有權(quán)限,表中沒有權(quán)限
      #正確方法創(chuàng)建root用戶
      mysql>  insert into mysql.user values ('localhohost','root',PASSWORD('123'),
      -> 'Y',
      -> 'Y',
      -> 'Y',
      -> 'Y',
      -> 'Y',
      -> 'Y',
      -> 'Y',
      -> 'Y',
      -> 'Y',
      -> 'Y',
      -> 'Y',
      -> 'Y',
      -> 'Y',
      -> 'Y',
      -> 'Y',
      -> 'Y',
      -> 'Y',
      -> 'Y',
      -> 'Y',
      -> 'Y',
      -> 'Y',
      -> 'Y',
      -> 'Y',
      -> 'Y',
      -> 'Y',
      -> 'Y',
      -> 'Y',
      -> 'Y',
      -> 'Y',
      -> '',
      -> '',
      -> '',
      -> '',0,0,0,0,'mysql_native_password','','N');
      #重啟mysqld
      /etc/init.d/mysqld start
      

      方法二:

      #關(guān)閉數(shù)據(jù)庫
      [root@db02 mysql-5.7.20]# /etc/init.d/mysqld stop #通用
      #啟動(dòng)數(shù)據(jù)庫
      [root@db02 mysql-5.7.20]# mysqld_safe --skip-grant-tables --skip-networking & 
      
      mysql>flush privileges;#刷新授權(quán)表,update 修改密碼時(shí)才能生效,危險(xiǎn)
      mysql> all on *.* to root@'127.0.0.1' identified by '1' 
      with grant option;#超級(jí)用戶
      #5.7版本,如果用戶不存在不能使用grant
      

      方法三:

      #導(dǎo)庫,在另一臺(tái)服務(wù)器上導(dǎo)出系統(tǒng)庫
      mysqldump -uroot -p1 -B mysql >/tmp/mysql.sql
      

      方法四:(不適合生產(chǎn)環(huán)境)

      #初始化
      cd /application/mysql/
      rm-fr data/ #注意data目錄不要?jiǎng)h錯(cuò)
      

      忘記root密碼

      #關(guān)閉數(shù)據(jù)庫
      [root@db02 mysql-5.7.20]# /etc/init.d/mysqld stop
      #啟動(dòng)數(shù)據(jù)庫
      [root@db02 mysql-5.7.20]# mysqld_safe --skip-grant-tables --skip-networking &
      
      #1.update修改密碼
      update mysql.user set password=PASSWORD('123') where user='root' and host='localhost';
      mysql> flush privileges;
      #2.set
      mysql> set password=PASSWORD('1');
      #3.grant
      mysql> grant all on *.* to root@'localhost' identified by '2';
      #4.mysqladmin
      [root@db01 ~]# mysqladmin -uroot -p2 password '123'
      #5.alter
      
      • 2.用戶管理及權(quán)限管理_

      1)創(chuàng)建用戶

      mysql> create user oldboy@'10.0.0.%' identified by '123';
      

      2)查看用戶

      mysql>  select user,host from mysql.user;
      

      3)刪除用戶

      mysql>  drop user oldboy@‘10.0.0.%’;#drop user sql語句
      

      4)修改密碼

      select database();#pwd
      desc mysql.user;查看表權(quán)限
      #插入表內(nèi)容 insert into user(user,host.password) values()
      
      #進(jìn)入庫里面修改密碼,或者使用絕對(duì)路徑
      
      mysql> set password
      mysql> update user set password=PASSWORD('oldboy123') where user='root' and host='localhost';#mysql.user
      mysql> grant all privileges on *.* to oldboy@’10.0.0.%’ identified by ‘123’;
      

      5)用戶權(quán)限介紹

      MySQL的權(quán)限定義:
      作用對(duì)象:庫、表
      權(quán)限

      INSERT,SELECT, UPDATE, DELETE, CREATE, DROP, RELOAD, SHUTDOWN,  PROCESS, FILE, REFERENCES, INDEX, ALTER, SHOW DATABASES, SUPER, CREATE TEMPORARY TABLES, LOCK TABLES, EXECUTE, REPLICATION SLAVE, REPLICATION CLIENT, CREATE VIEW, SHOW VIEW, CREATE ROUTINE, ALTER ROUTINE, CREATE USER, EVENT, TRIGGER, CREATE TABLESPACE
      

      給開發(fā)開權(quán)限

      grant INSERT,SELECT, UPDATE, DELETE on *.* to dev@'xxx';
      

      權(quán)限最小化,最小級(jí)別不是表級(jí)別,是列級(jí)別

      grant select on mysql.user.user to dev@'10.0.0.5%' identified by '123';
      use vip;
      use tables;
      
      

      主機(jī)域:10.0.0.5% 可以連接:10.0.0.50-59 10.0.0.5

      脫敏:脫離敏感信息

      grant select(user,host) on wzry.user to no_vip@'%' identified by '123';
      

      數(shù)據(jù)庫集群:10.0.0.51 52 53 54

      歸屬
      每次設(shè)定只能有一個(gè)屬主,沒有屬組或其他用戶的概念

      grant all privileges on *.* to oldboy@’10.0.0.%’ identified by ‘123’;
      權(quán)限 作用對(duì)象 歸屬 密碼
      

      作用對(duì)象分解

      . [當(dāng)前MySQL實(shí)例中所有庫下的所有表]
      wordpress.* [當(dāng)前MySQL實(shí)例中wordpress庫中所有表(單庫級(jí)別)]
      wordpress.user [當(dāng)前MySQL實(shí)例中wordpress庫中的user表(單表級(jí)別)]

      思考下面場(chǎng)景:
      開發(fā):你把root用戶給我唄?

      你:emmmmm........ SO?
      img?


      實(shí)驗(yàn)思考問題:

      #創(chuàng)建wordpress數(shù)據(jù)庫
      create database wordpress;
      #使用wordpress庫
      use wordpress;
      #創(chuàng)建t1、t2表
      create table t1 (id int);
      create table t2 (id int);
      #創(chuàng)建blog庫
      create database blog;
      #使用blog庫
      use blog;
      #創(chuàng)建t1表
      create table tb1 (id int);
      

      授權(quán):

      1、grant select on *.* to wordpress@’10.0.0.5%’ identified by ‘123’;
      2、grant insert,delete,update on wordpress.* to wordpress@’10.0.0.5%’ identified by ‘123’;
      3、grant all on wordpress.t1 to wordpress@’10.0.0.5%’ identified by ‘123’;
      

      問:
      一個(gè)客戶端程序使用wordpress用戶登陸到10.0.0.51的MySQL后,

      • 1、對(duì)t1表的管理能力?
      • 2、對(duì)t2表的管理能力?
      • 3、對(duì)tb1表的管理能力?

      解:

      • 1、同時(shí)滿足1,2,3,最終權(quán)限是1+2+3
      • 2、同時(shí)滿足了1和2兩個(gè)授權(quán),最終權(quán)限是1+2
      • 3、只滿足1授權(quán),所以只能select

      但列級(jí)別是最小級(jí)別

      create database wordpress;
      use wordpress;
      create table t1 (id int);
      create table t2 (id int);
      create database blog;
      use blog;
      create table tb1 (id int);
      mysql> show databases;
      +--------------------+
      | Database |
      +--------------------+
      | blog |
      | wordpress |
      +--------------------+
      mysql> show tables from wordpress;
      +---------------------+
      | Tables_in_wordpress |
      +---------------------+
      | t1 |
      | t2 |
      +---------------------+
      mysql> show tables from blog;
      +----------------+
      | Tables_in_blog |
      +----------------+
      | tb1 |
      +----------------+
      
      1、grant select on *.* to wordpress@’10.0.0.5%’ identified by ‘123’;
      針對(duì)wordpress@'10.0.0.5%' 授權(quán) 所有庫所有表 查詢權(quán)限 密碼是 123
      2、grant insert,delete,update on wordpress.* to wordpress@’10.0.0.5%’ identified by ‘123’;
      針對(duì)wordpress@'10.0.0.5%' 授權(quán) 插入、刪除、修改 wordpress庫中的所有表 密碼是 123
      3、grant all on wordpress.t1 to wordpress@’10.0.0.5%’ identified by ‘123’;
      針對(duì)wordpress@'10.0.0.5%' 授權(quán)所有權(quán)限 wordpress庫中的t1表 密碼是123
      

      一個(gè)客戶端程序使用wordpress用戶登錄到10.0.0.51的mysql后

      [root@db02 ~]# mysql -uwordpress -p123 -h10.0.0.51
      
      1、對(duì)t1(wordpress)表的管理能力? t1:select ,insert,delete,update all
      所有權(quán)限
      2、對(duì)t2(wordpress)表的管理能力?t2:select,insert,delete,update
      insert update delete select
      3、對(duì)tb1表的管理能力?
      只有select
      

      結(jié)論:

      1.如果在不同級(jí)別都包含某個(gè)表的管理能力時(shí),權(quán)限是相加關(guān)系

      2.但是我們不推薦在多級(jí)別定義重復(fù)權(quán)限

      3.最常用的權(quán)限設(shè)定方式是單庫級(jí)別授權(quán),即:wordpres.*[單庫級(jí)別]

      在企業(yè)中,開發(fā)讓你給他開一個(gè)MySQL的用戶:

      grant insert,delete,update on wordpress.* to wordpress@’ identified by ‘123’;
      

      1.權(quán)限是什么?insert,delete,update

      2.哪個(gè)庫,哪幾張表?哪些列? wordpress.*

      3.你從哪里連接?‘10.0.0.5%’

      4.用戶名和密碼是什么?

      5.發(fā)郵件,走流程

      三.MySQL連接管理

      1.連接工具

      • 1)MySQL自帶的連接工具

      mysql

      常見的特定于客戶機(jī)的連接選項(xiàng):
      -u:指定用戶
      -p:指定密碼
      -h:指定主機(jī)
      -P:指定端口
      -S:指定sock
      -e:指定SQL
      --protocol=name:指定連接方式

      • 2)第三方的連接工具

      sqlyog、navicat
      應(yīng)用程序連接MySQL
      注意:需要加載對(duì)應(yīng)語言程序的API

      2.連接方式

        1. socket連接
      mysql -uroot -poldboy123 -S/application/mysql/tmp/mysql.sock
      mysql -uroot -poldboy123
      
        1. TCP/IP
      mysql -uroot -poldboy123 -h10.0.0.51 -P3306
      
      • 問題:你怎么判斷你的MySQL數(shù)據(jù)庫可以對(duì)外提供服務(wù)?

      四.MySQL啟動(dòng)關(guān)閉流程

      啟動(dòng)

      /etc/init.d/mysqld start
      service mysqld start
      systemctl start mysqld
      mysqld_safe --defaults-file=/etc/my.cnf &
      

      關(guān)閉

      /etc/init.d/mysqld stop 
      mysqladmin -uroot -poldboy123 shutdown
      service mysqld stop
      systemctl stop mysqld
      kill -9 pid ?
      killall mysqld ?
      pkill mysqld ?
      

      出現(xiàn)問題:
      - 1、如果在業(yè)務(wù)繁忙的情況下,數(shù)據(jù)庫不會(huì)釋放pid和sock文件
      - 2、號(hào)稱可以達(dá)到和Oracle一樣的安全性,但是并不能100%達(dá)到
      - 3、在業(yè)務(wù)繁忙的情況下,丟數(shù)據(jù)(補(bǔ)救措施,高可用)

      五.MySQL實(shí)例初始化配置

      1.初始化配置文件的作用

      場(chǎng)景:我要啟動(dòng)實(shí)例

      問題:
      1)我不知道我的程序在哪?
      2)我也不知道我將來啟動(dòng)后去哪找數(shù)據(jù)庫?
      3)將來我啟動(dòng)的時(shí)候啟動(dòng)信息和錯(cuò)誤信息放在哪?
      4)我啟動(dòng)的時(shí)候sock文件pid文件放在哪?
      5)我啟動(dòng),你們給了我多少內(nèi)存?
      ...
      N)我還有很多問題需要在我啟動(dòng)之前告訴我,emmmmm....

      ?

      • 1)預(yù)編譯:cmake去指定,硬編碼到程序當(dāng)中去
      • 2)在命令行設(shè)定啟動(dòng)初始化配置
      --skip-grant-tables 
      --skip-networking
      --datadir=/application/mysql/data
      --basedir=/application/mysql
      --defaults-file=/etc/my.cnf
      --pid-file=/application/mysql/data/db01.pid
      --socket=/application/mysql/data/mysql.sock
      --user=mysql
      --port=3306
      --log-error=/application/mysql/data/db01.err
      
      • 3)初始化配置文件(/etc/my.cnf)

      配置文件讀取順序:

      img?

      說明:

      $MYSQL_HOME/my.cnf >>>>>>/application/mysql/my.cnf

      defaults-extra-file>>>>>/tmp/my.cnf

      #查詢server_id
      mysql -uroot -p1 -e "show variables like 'server_id'"
      

      --defaults-file:默認(rèn)配置文件
      如果使用./bin/mysqld_safe 守護(hù)進(jìn)程啟動(dòng)mysql數(shù)據(jù)庫時(shí),使用了 --defaults-file=<配置文件的絕對(duì)路徑>參數(shù),這時(shí)只會(huì)使用這個(gè)參數(shù)指定的配置文件。


      思考:

      #cmake:
      socket=/application/mysql/tmp/mysql.sock
      #命令行:
      --socket=/tmp/mysql.sock
      #配置文件:
      /etc/my.cnf中[mysqld]標(biāo)簽下:socket=/opt/mysql.sock
      #default參數(shù):
      --defaults-file=/tmp/a.txt配置文件中[mysqld]標(biāo)簽下:socket=/tmp/test.sock
      

      socket文件會(huì)生成在哪???文件名叫什么???

      /tmp/mysql.sock

      img?

      優(yōu)先級(jí)結(jié)論:

      • 1、命令行
      • 2、defaults-file
      • 3、配置文件(覆蓋)
      • 4、預(yù)編譯(cmake)

      2.初始化配置文件的使用

      初始化配置文件功能

      1)影響服務(wù)端的啟動(dòng)(mysqld)
      2)影響到客戶端的連接

      • mysql
      • mysqldump
      • mysqladmin

      如何配置初始化配置文件

      1)配置標(biāo)簽分類
      [client]所有客戶端程序
      mysql
      mysqldump
      ...

      [server]所有服務(wù)器程序
      mysqld
      mysqld_safe
      ...

      六.MySQL多實(shí)例配置

      • 1.什么是多實(shí)例

      1)多套后臺(tái)進(jìn)程+線程+內(nèi)存結(jié)構(gòu)

      2)多個(gè)配置文件
      a.多個(gè)端口
      b.多個(gè)socket文件
      c.多個(gè)日志文件
      d.多個(gè)server_id

      3)多套數(shù)據(jù)

      • 啟動(dòng)腳本

      • 2.多實(shí)例實(shí)戰(zhàn)

      1.準(zhǔn)備多個(gè)配置文件

      #創(chuàng)建多個(gè)存放配置文件的目錄
      [root@db02 ~]# mkdir /data/{3307,3308,3309} -p
      [root@db02 ~]# tree /data/
      /data/
      ├── 3307
      ├── 3308
      └── 3309
      #創(chuàng)建多個(gè)配置文件
      [root@db02 ~]# vim /data/3307/my.cnf
      [mysqld]
      basedir=/application/mysql
      datadir=/data/3307/data
      socket=/data/3307/data/mysql.sock
      port=3307
      log_error=/data/3307/data/3307.err
      log-bin=/data/3307/mysql-bin
      server_id=7
      pid_file=/data/3307/data/3307.pid
      [client]
      socket=/data/3307/mysql.sock
      ------------------------------------------------------------[root@db02 ~]# vim /data/3308/my.cnf
      [mysqld]
      basedir=/application/mysql
      datadir=/data/3308/data
      socket=/data/3308/data/mysql.sock
      port=3308
      log_error=/data/3308/data/3308.err
      server_id=8
      pid_file=/data/3308/data/3308.pid
      ------------------------------------------------------------[root@db02 ~]# vim /data/3309/my.cnf
      [mysqld]
      basedir=/application/mysql
      datadir=/data/3309/data
      socket=/data/3309/data/mysql.sock
      port=3309
      log_error=/data/3309/data/3309.err
      server_id=9
      pid_file=/data/3309/data/3309.pid
      ------------------------------------------------------------[root@db02 ~]# tree /data
      /data
      ├── 3307
      │ └── my.cnf
      ├── 3308
      │ └── my.cnf└── 3309
      └── my.cnf
      

      2.初始化多個(gè)datadir

      [root@db02 ~]# cd /application/mysql/scripts/
      #初始化3307的數(shù)據(jù)目錄
      [root@db02 scripts]#./mysql_install_db --defaults-file=/data/3307/my.cnf --user=mysql --basedir=/application/mysql --datadir=/data/3307/data
      #3308
      [root@db02 scripts]# ./mysql_install_db --defaults-file=/data/3308/my.cnf --user=mysql --
      basedir=/application/mysql --datadir=/data/3308/data
      #3309
      [root@db02 scripts]# ./mysql_install_db --defaults-file=/data/3309/my.cnf --user=mysql --
      basedir=/application/mysql --datadir=/data/3309/data
      [root@db02 scripts]# tree -L 2 /data
      /data
      ├── 3307
      │ ├── data
      │ └── my.cnf
      ├── 3308
      │ ├── data
      │ └── my.cnf
      └── 3309
      ├── data
      └── my.cnf
      

      3.啟動(dòng)多實(shí)例

      mysqld_safe --defaults-file=/data/3307/my.cnf &
      mysqld_safe --defaults-file=/data/3308/my.cnf &
      mysqld_safe --defaults-file=/data/3309/my.cnf &
      #檢查端口
      [root@db02 scripts]# netstat -lntup
      Active Internet connections (only servers)
      Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program
      name
      tcp6 0 0 :::3306 :::* LISTEN
      13052/mysqld
      tcp6 0 0 :::3307 :::* LISTEN
      13598/mysqld
      tcp6 0 0 :::3308 :::* LISTEN
      13428/mysqld
      tcp6 0 0 :::3309 :::* LISTEN
      13768/mysqld
      

      4.設(shè)置密碼

      [root@db02 scripts]# mysqladmin -uroot -p -S/data/3307/data/mysql.sock password '3307'
      [root@db02 scripts]# mysqladmin -uroot -p -S/data/3308/data/mysql.sock password '3308'
      [root@db02 scripts]# mysqladmin -uroot -p -S/data/3309/data/mysql.sock password '3309'
      

      5.連接mysqsl

      [root@db02 scripts]# mysql -uroot -p3307 -S /data/3307/data/mysql.sock
      [root@db02 scripts]# mysql -uroot -p3308 -S /data/3308/data/mysql.sock
      [root@db02 scripts]# mysql -uroot -p3309 -S /data/3309/data/mysql.sock
      
      #小技巧
      #system管理
      [root@db01 ~]# vim /usr/lib/systemd/system/mysqld.service 
      
      [Unit]
      Description=MySQL Server
      Documentation=man:mysqld(8)
      Documentation=https://dev./doc/refman/en/using-systemd.html
      After=network.target
      After=syslog.target
      [Install]
      WantedBy=multi-user.target
      [Service]
      User=mysql
      Group=mysql
      ExecStart=/application/mysql/bin/mysqld --defaults-file=/etc/my.cnf #給下路徑
      LimitNOFILE = 5000
      
      #mysql連接
      [root@db02 bin]# vim mysql3309
      mysql -uroot -p3309 -S /data/3309/data/mysql.sock
      [root@db02 bin]# chmod +x mysql3309
      

      高可用:

      主從復(fù)制

      主庫操作

      修改配置文件

      #編輯mysql配置文件
      [root@mysql-db01 ~]# vim /etc/my.cnf
      #在mysqld標(biāo)簽下配置
      [mysqld]
      #主庫server-id為1,從庫不等于1
      server_id =1
      #開啟binlog日志
      log_bin=mysql-bin
      

      創(chuàng)建主從復(fù)制用戶

      #登錄數(shù)據(jù)庫
      [root@mysql-db01 ~]# mysql -uroot -poldboy123
      #創(chuàng)建rep用戶
      mysql> grant replication slave on *.* to rep@'10.0.0.%' identified by '123';
      

      從庫操作

      修改配置文件

      #修改mysql-db02配置文件
      [root@mysql-db02 ~]# vim /etc/my.cnf
      #在mysqld標(biāo)簽下配置
      [mysqld]
      #主庫server-id為1,從庫必須大于1
      server_id =5
      #開啟binlog日志
      log_bin=mysql-bin
      #重啟mysql
      [root@mysql-db02 ~]# /etc/init.d/mysqld restart
      #修改mysql-db03配置文件
      [root@mysql-db03 ~]# vim /etc/my.cnf
      #在mysqld標(biāo)簽下配置
      [mysqld]
      #主庫server-id為1,從庫必須大于1
      server_id =10
      #開啟binlog日志
      log_bin=mysql-bin
      #重啟mysql
      [root@mysql-db03 ~]# /etc/init.d/mysqld restart
      

      基于binlog日志的主從復(fù)制,則必須記住主庫的master狀態(tài)信息

      mysql> show master status;
      +------------------+----------+
      | File             | Position |
      +------------------+----------+
      | mysql-bin.000002 |      120 |
      +------------------+----------+
      

      從庫

      mysql>change master to
          master_host='127.0.0.1',
          master_user='rep',
          master_password='123',
          master_log_file='mysql-bin.000001',
          master_log_pos=120,
          master_port=3306;
          
          start slave;
          show slave status\G
      

      如果IO線程為NO

      • 1.檢查網(wǎng)路

        ping 127.0.0.

      • 2.檢查端口

        telnet 127.0.0.1 3307

      • 檢查賬號(hào),密碼

        mysql -urep -p123 -h127.0.0.1 -P 3307

        本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
        轉(zhuǎn)藏 分享 獻(xiàn)花(0

        0條評(píng)論

        發(fā)表

        請(qǐng)遵守用戶 評(píng)論公約

        類似文章 更多