Linux Mysql安裝與配置

一 安裝前準備node

  • 檢查是否已安裝
[root@localhost /]# rpm -qa | grep mysql

若是已安裝,執行刪除命令mysql

[root@localhost /]# rpm -e --nodeps mysql-libs-5.1.73-5.el6_6.x86_64
  • 查詢全部mysql文件夾並刪除
[root@localhost /]# whereis mysql
mysql: /usr/bin/mysql /usr/include/mysql
[root@localhost lib]# find / -name mysql
/data/mysql
/data/mysql/mysql
[root@localhost /]#  rm -rf /usr/bin/mysql /usr/include/mysql /data/mysql /data/mysql/mysql 
[root@localhost /]# whereis mysql
mysql:
[root@localhost /]# find / -name mysql
[root@localhost /]#
  • mysql用戶組和用戶是否存在,若是沒有,則建立
[root@localhost /]# cat /etc/group | grep mysql
[root@localhost /]# cat /etc/passwd |grep mysql
[root@localhost /]# groupadd mysql
[root@localhost /]# useradd -r -g mysql mysql
[root@localhost /]#
  • 官網下載mysql安裝包
[root@localhost /]#  wget https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.24-linux-glibc2.12-x86_64.tar.gz

二 安裝mysqllinux

  • 執行wget命令的目錄下執行
[root@localhost /]#  tar xzvf mysql-5.7.24-linux-glibc2.12-x86_64.tar.gz

解壓完成後,能夠看到當前目錄下多了一個解壓文件,移動該文件到/usr/local/下,並將文件夾名稱修改成mysqlsql

[root@localhost /]# mv mysql-5.7.24-linux-glibc2.12-x86_64 /usr/local/
[root@localhost /]# cd /usr/local/
[root@localhost /]# mv mysql-5.7.24-linux-glibc2.12-x86_64 mysql

若是/usr/local/下不存在mysql文件夾,直接執行以下命令,也可達到上述效果。shell

[root@localhost /]# mv mysql-5.7.24-linux-glibc2.12-x86_64 /usr/local/mysql
  • /usr/local/mysql目錄下建立data目錄
[root@localhost /]# mkdir /usr/local/mysql/data
  • 更改mysql目錄下全部的目錄及文件夾所屬的用戶組和用戶,以及權限
[root@localhost /]# chown -R mysql:mysql /usr/local/mysql
[root@localhost /]# chmod -R 755 /usr/local/mysql
  • 編譯安裝並初始化mysql,務必記住初始化輸出日誌末尾的密碼(數據庫管理員臨時密碼)
[root@localhost /]# cd /usr/local/mysql/bin
[root@localhost bin]# ./mysqld --initialize --user=mysql --datadir=/usr/local/mysql/data --basedir=/usr/local/mysql
補充說明:

初始化時,可能會出現錯誤:
image.png
出現該問題首先檢查該庫文件有沒有安裝,使用命令進行覈查。數據庫

[root@localhost bin]# rpm -qa|grep libaio   
[root@localhost bin]#

運行命令後發現系統中無該庫文件,查看該庫文件由哪一個包提供bash

[root@localhost bin]# yum provides libnuma.so.1
已加載插件:fastestmirror, langpacks
Loading mirror speeds from cached hostfile
numactl-libs-2.0.12-5.el7.i686 : libnuma libraries
源    :os
匹配來源:
提供    :libnuma.so.1

安裝該文件對應的包:服務器

[root@localhost bin]#  yum -y install numactl

安裝無誤以後,再從新執行初始化命令。ide

[root@localhost bin]# ./mysqld --initialize --user=mysql --datadir=/usr/local/mysql/data -->basedir=/usr/local/mysql
  • 運行初始化命令成功後,輸出日誌以下:

image.png
記錄日誌最末尾位置root@localhost:後的字符串,此字符串爲mysql管理員臨時登陸密碼。測試

  • 編輯配置文件my.cnf,覆蓋配置以下
[root@localhost bin]#  vi /etc/my.cnf
[mysqld]
datadir=/usr/local/mysql/data
port=3306
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
symbolic-links=0
max_connections=600
innodb_file_per_table=1
lower_case_table_names=1
character_set_server=utf8
lower_case_table_names:是否區分大小寫,1表示存儲時表名爲小寫,操做時不區分大小寫;0表示區分大小寫;不能動態設置,修改後,必須重啓才能生效:
character_set_server:設置數據庫默認字符集,若是不設置默認爲latin1
innodb_file_per_table:是否將每一個表的數據單獨存儲,1表示單獨存儲;0表示關閉獨立表空間,能夠經過查看數據目錄,查看文件結>構的區別;
  • 測試啓動mysql服務器
[root@localhost /]# /usr/local/mysql/support-files/mysql.server start

顯示以下結果,說明數據庫安裝並能夠正常啓動
image.png

異常狀況

若是出現以下提示信息

Starting MySQL... ERROR! The server quit without updating PID file

查看是否存在mysql和mysqld的服務,若是存在,則結束進程,再從新執行啓動命令

#查詢服務
ps -ef|grep mysql | grep -v grep
ps -ef|grep mysqld | grep -v grep

#結束進程
kill -9 PID

#啓動服務
/usr/local/mysql/support-files/mysql.server start
  • 登陸mysql,修改密碼(密碼爲步驟5生成的臨時密碼)
[root@localhost /]#  mysql -u root -p
Enter password:
mysql>set password for root@localhost = password('yourpass');
注意:輸入密碼時,Enter password 後面不會有任何顯示,此時實際是輸入成功的,輸入完密碼後直接回車便可。或使用:mysql -u root -p 密碼 ,回車後,便可直接進入數據庫
相關文章
相關標籤/搜索