1. 程式人生 > 實用技巧 >centos7安裝mysql 5.7.29

centos7安裝mysql 5.7.29

下載mysql

搜狐映象:http://mirrors.sohu.com/mysql/MySQL-5.7/mysql-5.7.29-linux-glibc2.12-x86_64.tar.gz

檢查環境

  • 是否安裝mysql
rpm -qa|grep -i mysql
  • 是否安裝MariaDB
rpm -qa|grep -i mariadb
  • 解除安裝命令
yum -y remove xxx
  • 準備安裝包
    mysql-5.7.29-linux-glibc2.12-x86_64.tar.gz
  • 是否安裝libaio
rpm -qa|grep libaio
  • 安裝libaio
yum install libaio-devel.x86_64

解壓安裝包並重命名

tar -zxvf mysql-5.7.29-linux-glibc2.12-x86_64.tar.gz
mv mysql-5.7.29-linux-glibc2.12-x86_64 mysql-5.7.29

建立使用者和使用者組

groupadd mysql
useradd -r -g mysql -s /bin/false mysql

授予目錄許可權

chown -R mysql.mysql /usr/software/mysql

建立data資料夾

mkdir data

初始化資料庫

/usr/software/mysql/mysql-5.7.29/bin/mysqld --user=mysql --basedir=/usr/software/mysql/mysql-5.7.29 --datadir=/usr/software/mysql/mysql-5.7.29/data --initialize
  • 記下臨時密碼 在完成後最後一行

配置檔案

vim /etc/my.cnf
[mysqld]
datadir=/usr/software/mysql/mysql-5.7.29/data
basedir=/usr/software/mysql/mysql-5.7.29
socket=/tmp/mysql.sock
user=mysql
port=3306
character-set-server=utf8

#跳過密碼驗證,忘記密碼 可以設定,然後修改密碼,再關閉
#skip-grant-tables

# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0
# Settings user and group are ignored when systemd is used.
# If you need to run mysqld under a different user or group,
# customize your systemd unit file for mariadb according to the
# instructions in http://fedoraproject.org/wiki/Systemd

[mysqld_safe]

log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid
# include all files from the config directory
!includedir /etc/my.cnf.d

將mysql加入服務

cp /usr/software/mysql/mysql-5.7.29/support-files/mysql.server /etc/init.d/mysql

修改目錄basedir datadir

vim /etc/init.d/mysql
basedir=/usr/software/mysql/mysql-5.7.29
datadir=/usr/software/mysql/mysql-5.7.29/data
//開機啟動
chkconfig mysql on
//建立目錄
mkdir /etc/my.cnf.d/

啟動服務

service mysql start

配置環境變數

vim /etc/profile
export PATH=$PATH:/usr/software/mysql/mysql-5.7.29/bin
//使配置生效
source /etc/profile

登入mysql修改密碼、設定遠端

mysql -uroot -p
alter user 'root'@'localhost' identified by '201619706';
flush privileges;
use mysql;
update user set user.Host='%' where user.User='root';
flush privileges;
exit;
//重啟服務
service mysql restart