二進制包安裝Mysql

(1).準備工做html

  前往mysql官網下載二進制安裝包,https://dev.mysql.com/downloads/mysql/5.7.html#downloads(注意:選擇操做系統時選Linux-Generic)。我這裏下載的是mysql-5.7.26-linux-glibc2.12-x86_64。mysql

  Mysql5.7參考手冊-2.2使用通用二進制文件在Unix/Linux上安裝Mysql:https://dev.mysql.com/doc/refman/5.7/en/binary-installation.htmllinux

  在下載和上傳的過程當中,能夠先檢查系統中的Mysql或mariadb,若是存在將其卸載sql

[root@youxi1 ~]# rpm -qa | grep mysql
[root@youxi1 ~]# rpm -qa | grep mariadb
mariadb-libs-5.5.56-2.el7.x86_64
[root@youxi1 ~]# yum -y remove mariadb-libs.x86_64 

  接着建立mysql的專用用戶,官方使用的是/bin/false同樣也能夠。數據庫

[root@youxi1 ~]# useradd -M -s /sbin/nologin -r mysql  //-M不建立主目錄,-s /sbin/nologin不容許登陸,-r建立的是系統用戶

  安裝依賴包,CentOS7好像自帶能夠不裝。vim

[root@youxi1 ~]# yum install libaio

  官方說明:版本大於等於5.7.19,對通用Linux構建添加了對非統一內存訪問(NUMA)的支持,該構建如今依賴於 libnuma庫。socket

(2).解壓二進制包,建立數據目錄,修改mysql文件所屬主和所屬組,而後初始化數據庫測試

[root@youxi1 ~]# tar zxf mysql-5.7.26-linux-glibc2.12-x86_64.tar.gz -C /usr/local/  //解壓
[root@youxi1 ~]# cd /usr/local/
[root@youxi1 local]# mv mysql-5.7.26-linux-glibc2.12-x86_64/ mysql  //文件夾重命名,否則配置文件要寫很長一段
[root@youxi1 local]# cd mysql/
[root@youxi1 mysql]# mkdir data  //建立數據目錄
[root@youxi1 mysql]# chown -R mysql.mysql /usr/local/mysql/  //修改所屬主和所屬組
[root@youxi1 mysql]# bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data  //初始化
2019-06-26T07:12:23.842578Z 0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option (see documentation for more details).
2019-06-26T07:12:25.699399Z 0 [Warning] InnoDB: New log files created, LSN=45790
2019-06-26T07:12:25.920250Z 0 [Warning] InnoDB: Creating foreign key constraint system tables.
2019-06-26T07:12:25.998106Z 0 [Warning] No existing UUID has been found, so we assume that this is the first time that this server has been started. Generating a new UUID: c03a1dc7-97e1-11e9-acca-000c29e6d627.
2019-06-26T07:12:26.041964Z 0 [Warning] Gtid table is not ready to be used. Table 'mysql.gtid_executed' cannot be opened.
2019-06-26T07:12:26.044143Z 1 [Note] A temporary password is generated for root@localhost: jcJ3Ncguf:ql  //顯示root@localhost第一次登陸的隨機密碼

(3).編輯配置文件/etc/my.cnfthis

[root@youxi1 mysql]# vim /etc/my.cnf
[mysqld]
basedir=/usr/local/mysql
datadir=/usr/local/mysql/data
port=3306
socket=/usr/local/mysql/mysql.sock
character-set-server=utf8
log-error=/var/log/mysqld.log
pid-file=/tmp/mysqld.pid
[mysql]
socket=/usr/local/mysql/mysql.sock
[client]
socket=/usr/local/mysql/mysql.sock

(4).配置環境變量,並刷新spa

[root@youxi1 mysql]# vim /etc/profile.d/mysql.sh
export PATH=/usr/local/mysql/bin:$PATH
[root@youxi1 mysql]# . /etc/profile.d/mysql.sh  //兩種刷新方式,還能夠使用source /etc/profile.d/mysql.sh

(5).生成啓動腳本,並啓動mysql

[root@youxi1 mysql]# cp support-files/mysql.server /etc/init.d/mysqld
[root@youxi1 mysql]# chmod +x /etc/init.d/mysqld
[root@youxi1 mysql]# vim /etc/init.d/mysqld
basedir=/usr/local/mysql  //在第46~47行
datadir=/usr/local/mysql/data
[root@youxi1 mysql]# /etc/init.d/mysqld start
Starting MySQL. SUCCESS!

(6).測試,並修改root密碼

[root@youxi1 mysql]# mysql -uroot -p'jcJ3Ncguf:ql'
mysql> set password for root@localhost=password('123456');
Query OK, 0 rows affected, 1 warning (0.00 sec)

mysql> show variables like 'validate_password%';  //能夠看到沒有密碼複雜度插件
Empty set (0.01 sec)

mysql> exit
Bye
[root@youxi1 mysql]# mysql -uroot -p123456
mysql>
相關文章
相關標籤/搜索