CentOS 7.9 安裝 MySQL5.7

cat /etc/redhat-release
CentOS Linux release 7.9.2009 (Core)

環境準備

  1. 卸載原有的mariadb或mysql
rpm -qa | grep -i mysql
rpm -qa | grep -i mariadb

rpm -e mariadb-xxxx
#注:如上命令刪除不成功,有別的軟件依賴無法刪除時,如下操作:
yum remove mariadb-xxxx
或
rpm -e --nodeps mariadb-xxx
  1. 關閉 seLinux
一、查看SELinux狀態命令:
  1、/usr/sbin/sestatus -v ##如果SELinux status參數爲enabled即爲開啓狀態
  SELinux status: enabled
  2、getenforce ##也可以用這個命令檢查

二、關閉SELinux方法:
  1、臨時關閉(不用重啓機器):
  代碼如下:
  setenforce 0 #設置SELinux 成爲 permissive 模式
  #setenforce 1 設置SELinux 成爲 enforcing 模式

  2、修改配置文件需要重啓機器:
  修改/etc/selinux/config 文件
  將SELINUX=enforcing 改爲 SELINUX=disabled
  重啓機器即可
  1. 下載 mysql 安裝源
去 mysql 官網下載鏈接
https://dev.mysql.com/downloads/repo/yum/
wget https://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpm

yum install -y mysql80-community-release-el7-3.noarch.rpm

ls -la /etc/yum.repos.d/|grep mysql
-rw-r--r--.  1 root root 2076 4月  24 2019 mysql-community.repo
-rw-r--r--.  1 root root 2108 4月  24 2019 mysql-community-source.repo

<!-- 查看所有可用的安裝軟件列表 關閉其他的mysql軟件 打開5.7 並安裝mysql -->
yum repolist
yum repolist all |grep mysql
yum -y install yum-utils
yum-config-manager --disable mysql80-community
yum-config-manager --enable mysql57-community
yum install -y mysql-community-server mysql
yum-config-manager --enable mysql57-community*
yum install -y mysql-community-server mysql
  1. 啓動MySQL 並初始化密碼
# 修改 /etc/my.conf 配置 datadir 和 log-error 指向數據目錄
[mysqld]
datadir=/data/mysql/data
#datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
#socket=/data/mysql/data/mysql.sock
symbolic-links=0

log-error=/data/mysql/log/mysqld.log
#log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid

# 把數據目錄修改爲 mysql 用戶 權限
ls -la /data/
total 28
d-wx--x--x  4 mysql mysql    29 Jul 15 07:10 mysql

systemctl daemon-reload
systemctl start mysqld
systemctl enable mysqld
systemctl status mysqld
systemctl restart mysqld
systemctl stop mysqld
  1. MySQL用戶密碼配置
# mysql 第一次安裝會初始化一個密碼
grep 'password' /data/mysql/log/mysqld.log
mysql -uroot -p'VNV&P,c3O?EQ'
alter user 'root'@'localhost' identified by 'Hao.123456';
select version();
grant all privileges on *.* to root@'%' identified by 'Hao.123456' with grant option;
flush privileges;
  1. 其他配置,用其他用戶啓動MySQL
/usr/local/mysql/bin/mysqld --initialize --user=root --basedir=/usr/local/mysql --datadir=/data/gpmm/mysql/data
/usr/local/mysql/bin/mysqld --daemonize --user=root --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data
grep 'temporary password' /usr/local/mysql/logs/error.log
grep 'password' /data/mysql/log/mysqld.log
f9/g*:BXn6KG
mysql -uroot -p'f9/g*:BXn6KG'
alter user 'root'@'localhost' identified by '1qaz@WSX';
select version();
grant all privileges on *.* to root@'%' identified by '1qaz@WSX' with grant option;
flush privileges;
修改服務的配置文件
cat /usr/lib/systemd/system/mysqld.service
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章