1. 程式人生 > >mysql-5.7(centos-6.9環境)源碼安裝

mysql-5.7(centos-6.9環境)源碼安裝

ssh-key rpm bsp charset efault repo x86 查看 b-

2017-12-25

# 配置主機名完整顯示
vim /etc/bashrc

  # Turn on checkwinsize
  shopt -s checkwinsize
  [ "$PS1" = "\\s-\\v\\\$ " ] && PS1="[\u@\H \W]\\$ "

# 配置主機名永久生效
vim /etc/sysconfig/network

NETWORKING=yes
HOSTNAME=mysql-5.7-master

# 配置主機名臨時生效
hostname mysql-5.7-master

# 配置hosts解析
vim /etc/hosts
127.0.0.1
localhost localhost.localdomain localhost4 localhost4.localdomain4 ::1 localhost localhost.localdomain localhost6 localhost6.localdomain6 10.0.0.156 mysql-5.7-master master 10.0.0.157 mysql-5.7-slave slave # 配置Yum倉庫 cd /etc/yum.repos.d wget http://mirrors.163.com/.help/CentOS6-Base-163.repo wget http://
mirrors.aliyun.com/epel/epel-release-latest-6.noarch.rpm rpm -ivh epel-release-latest-6.noarch.rpm yum clean all && yum makecache # 配置SSH互信 ssh-keygen -t rsa cat /root/.ssh/id_rsa.pub >> /root/.ssh/authorized_keys ssh-copy-id slave # 檢查殘留包 yum list|grep mysql yum -y remove mysql.x86_64 yum -y remove mysql-libs.x86_64 # 刪除默認位置配置文件
/etc/my.cnf rm -rf /etc/my.cnf # 創建目錄 mkdir -p /app/mysql/etc mkdir -p /data/mysql/my3306 # 創建用戶 groupadd dba && useradd mysql -g dba # 下載源碼包 wget http://mirrors.sohu.com/mysql/MySQL-5.7/mysql-boost-5.7.18.tar.gz # 解壓源碼包 tar -zxf mysql-boost-5.7.18.tar.gz -C /usr/local/src/ && cd /usr/local/src/mysql-5.7.18 # 安裝依賴包 yum -y install ncurses ncurses-devel gcc libtool gcc-c++ make cmake readline-devel zlib-devel bison perl-Module-Install.noarch # 預編譯 time cmake -DCMAKE_INSTALL_PREFIX=/app/mysql -DWITH_MYISAM_STORAGE_ENGINE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_PARTITION_STORAGE_ENGINE=1 -DWITH_BLACKHOLE_STORAGE_ENGINE=1 -DWITH_ARCHIVE_STORAGE_ENGINE=1 -DWITH_BLACKHOLE_STORAGE_ENGINE=1 -DWITH_PERFSCHEMA_STORAGE_ENGINE=1 -DWITH_FEDERATED_STORAGE_ENGINE=1 -DWITHOUT_EXAMPLE_STORAGE_ENGINE=1 -DDEFAULT_CHARSET=utf8mb4 -DDEFAULT_COLLATION=utf8mb4_general_ci -DEXTRA_CHARSETS=all -DENABLED_LOCAL_INFILE=ON -DWITH_BOOST=/usr/local/src/mysql-5.7.18/boost # 重新編譯(可選) make clean rm -rf CMakeCache.txt # 編譯、安裝 make && make install # 復制配置文件 cp ~/my.cnf /app/mysql/etc/my.cnf ln -s /app/mysql/etc/my.cnf /etc/my.cnf # 修改目錄所屬組、用戶 chown -R mysql.dba /app/mysql/ chown -R mysql.dba /data/mysql/ # 初始化數據庫 /app/mysql/bin/mysqld --defaults-file=/app/mysql/etc/my.cnf --initialize --basedir=/app/mysql --datadir=/data/mysql/my3306 --tmpdir=/data/mysql/my3306 --user=mysql # 配置環境變量 vim ~/.bash_profile MYSQL_BASE=/app/mysql PATH=$PATH:$HOME/bin:$MYSQL_BASE/bin source ~/.bash_profile # 配置ssl登錄 mysql_ssl_rsa_setup --datadir=/data/mysql/my3306 # 復制啟動腳本 cp /app/mysql/support-files/mysql.server /etc/rc.d/init.d/mysqld # 啟動數據庫 service mysqld start # 獲取初始化密碼 [root@mysql-5.7-master my3306]# grep temporary password /data/mysql/my3306/error.log 2017-12-22T15:39:53.526557Z 1 [Note] A temporary password is generated for root@localhost: bDjk&nU:h2Zl [root@mysql-5.7-slave my3306]# grep temporary password /data/mysql/my3306/error.log 2017-12-25T17:32:27.298337Z 1 [Note] A temporary password is generated for root@localhost: lR(;EGObl8q? # 登錄數據庫 mysql -uroot -pbDjk&nU:h2Zl mysql -uroot -plR(;EGObl8q? # 修改密碼並允許其他機器上客戶端登錄 set global validate_password_policy=0; # 重置root密碼 ALTER USER root@localhost IDENTIFIED BY tonghua@789; grant all privileges on *.* to root@% identified by tonghua@789 with grant option; # 退出並重新登錄數據庫 mysql -uroot -ptonghua@789 # 查看數據庫用戶及權限 select User,Host,authentication_string,account_locked from mysql.user; # 設置免密碼登陸路徑 mysql_config_editor set --login-path=my3306 --user=root --password --port=3306 --socket=/data/mysql/my3306/mysql.sock # 查看免密碼登陸路徑 mysql_config_editor print --all # 刪除免密碼登陸路徑(可選) mysql_config_editor remove --login-path=my3306 # 本地免密碼登陸數據庫 mysql --login-path=my3306 # 設置開機啟動 chkconfig mysqld on chkconfig --list | grep mysql

mysql-5.7(centos-6.9環境)源碼安裝