Centos7.2安裝mysql8

一、安裝前工做

在安裝前須要肯定如今這個系統有沒有 mysql,若是有那麼必須卸載 (在 centos7 自帶的是 mariaDb 數據庫,因此第一步是卸載數據庫)。node

  #查看mariadb數據庫:rpm -qa | grep mariadbmysql

  #卸載mariadb數據庫:rpm -e --nodeps  mariadb文件名linux

  #查看 mysql 數據庫:rpm -qa | grep -i mysqlsql

  #卸載 mysql 數據庫:rpm -e mysql文件名 # 若是有關聯文件,不能直接卸載。能夠用一下命令強制卸載:rpm -e --nodeps mysql文件名) 數據庫

  #刪除etc目錄下的my.cnf文件:rm /etc/my.cnfcentos

二、官網下載

下載成功以後,上傳到雲服務服務器

 

三、解壓到/usr/local下面

解壓命令:tar -xvf mysql-8.0.13-linux-glibc2.12-x86_64.tar.xz -C /usr/local/socket

四、添加mysql用戶組和用戶ide

  #首先檢查mysql用戶和組是否存在  post

  cat /etc/group | grep mysql      

  cat /etc/passwd | grep mysql

  #添加mysql用戶和組  

  groupadd mysql          

  useradd -r -g mysql mysql

五、初始化mysql配置表

  # chown -R mysql:mysql ./  修改當前目錄爲mysql用戶

  #./bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql-8.0.13-linux-glibc2.12-x86_64 --datadir=/usr/local/mysql-8.0.13-linux-glibc2.12-x86_64/data

    初始化數據庫

  # 若是出現如圖所示錯誤,則說明這是缺乏numactl,這個時候若是是Centos就yum -y install numactl就能夠解決,而後從新運行上面的initialize命令

  # 再次執行,注意下圖中initialize成功,會出現一個隨機密碼

 

  #修改當前用戶爲root用戶  chown -R root:root ./

  #修改當前的data目錄爲mysql用戶   chown -R mysql:mysql data/

  cd support-files/

  touch my-default.cnf

  cp ./my-default.cnf /etc/my.cnf

 mkdir tmp

 chmod 777 ./tmp/  

修改/etc/my.cnf配置文件

[mysqld]
basedir=/usr/local/mysql-8.0.13-linux-glibc2.12-x86_64
datadir=/usr/local/mysql-8.0.13-linux-glibc2.12-x86_64/data
port=3306
socket=/usr/local/mysql-8.0.13-linux-glibc2.12-x86_64/tmp/mysql.socket
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES

 

 

六、加入開機啓動項

  #copy

  #增長執行權限

  #註冊啓動服務

   #查看是否添加成功

cp mysql.server /etc/init.d/mysqld

chmod 755 /etc/init.d/mysqld

cd ..

chkconfig --add mysqld

  #啓動服務

cd support-files/
./mysql.server start --user=mysql

 

七、配置環境變量

  # vi /etc/profile

export PATH=$PATH:/usr/local/mysql-8.0.13-linux-glibc2.12-x86_64/bin:/usr/local/mysql-8.0.13-linux-glibc2.12-x86_64/lib

# 保存退出以後 執行source /etc/profile讓文件生效

八、登陸並修改初始密碼

  # 創建軟連接  ln -s /usr/local/mysql-8.0.13-linux-glibc2.12-x86_64/tmp/mysql.socket /tmp/mysql.sock

 

  # 登陸mysql,密碼是剛剛生成的

,修改密碼  alter user 'root'@'localhost' identified by '123456';

 

9, 受權用戶:任意主機以用戶root和密碼mypwd鏈接到mysql服務器

  # 查詢user和host,並將host改爲‘%’  select user,host from user;

  # update user set host = '%' where user = 'root';

  # flush privileges;

 

  # 通過以上步驟若是還連不上,能夠試試如下方式,重置如下密碼

  # ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '123456';

相關文章
相關標籤/搜索