contentOS7安裝mysql.tar.gz

        今天在工作中需要爲虛擬機安裝mysql,遇到總總問題---安裝包缺失、指令不存在,查閱了很多博客與資料大多數大同小異,看的也不是很清晰,所以寫一篇整理性的博客,爲contentOS7使用tar包安裝mysql進行一些記錄

 首先:因爲現在很多鏡像文件都自帶mysql數據庫,大多數都不需要再進行額外安裝,但也有人覺得默認安裝的數據庫版本過低,所以安裝第一步應該檢測當前虛擬機中是否已經安裝了mysql

 查看是否裝有mysql命令:

rpm -qa|grep mysql

 

 

將已安裝的mysql卸載命令(沒有則跳過):

rpm -e --nodeps 程序名

 

 

注意:如果是centos7,那麼默認會安裝一個mysql的分支產品mariadb,必須先卸載此分支產品

rpm -qa | grep mariadb

 

 

將已安裝的mariadb卸載命令(沒有則跳過):

rpm -e --nodeps 程序名

 

 

創建/user/database並將已下載tar包上傳(也可以使用yum指令由網絡下載)

cd /usr/ mkdir database

cd database

wget https://cdn.mysql.com//Downloads/MySQL-5.7/mysql-5.7.22-el7-x86_64.tar.gz

 

 

 

安裝mysql之前需要確保系統中有libaio依賴

yum search libaio
yum install libaio

 

 

 

解壓tar包準備開始安裝

tar -zxvf mysql-5.7.22-el7-x86_64.tar.gz
mv mysql-5.7.22-el7-x86_64 mysql5.7 #重命名爲mysql5.7

 

 

 

安裝mysql

1、添加用戶和組

#添加用戶組
groupadd mysql
#添加用戶mysql 到用戶組mysql(使用-r參數表示mysql用戶是一個系統用戶,不能登錄)
useradd -r -g mysql mysql
#添加完用下面命令測試,能看到mysql用戶的信息
id mysql

 

 

 

 

 

2、手動創建MySQL data目錄

cd /usr/database/mysql5.7/
mkdir data

 

 

 

3、權限設置

#將mysql及其下所有的目錄所有者和組均設爲mysql
chown -R mysql:mysql /usr/database/mysql5.7/
#查看是否設置成功,執行下面命令,可以看到文件的所有者和組都變成了mysql
cd /usr/database/
ll

 

 

 

 

 

4、配置my.cnf文件

注意:一定要在數據庫初始化之前加入 /etc 目錄下,如果已存在可以刪除後重新添加也可以直接進行修改

rm -rf /etc/my.cnf
vim /etc/my.cnf


#此文件內容如下(路徑根據自己的實際情況):
[client]
port = 3306
socket = /tmp/mysql.sock


[mysqld]
init-connect='SET NAMES utf8'
basedir=/usr/database/mysql5.7              #根據自己的安裝目錄填寫 
datadir=/usr/database/mysql5.7/data     #根據自己的mysql數據目錄填寫
socket=/tmp/mysql.sock
max_connections=200             # 允許最大連接數
character-set-server=utf8           # 服務端使用的字符集默認爲8比特編碼的latin1字符集
default-storage-engine=INNODB           # 創建新表時將使用的默認存儲引擎

 

 

 

 

 

 

 

 

 

 

5、初始化mysql

/usr/database/mysql5.7/bin/mysqld --initialize-insecure --user=mysql  --basedir=/usr/database/mysql5.7 --datadir=/usr/database/mysql5.7/data
#注意:mysqld --initialize-insecure初始化後的mysql是沒有密碼的,且如果目錄不一致注意修改


#重新修改下各個目錄的權限
chown -R root:root /usr/database/mysql5.7/      #把安裝目錄的目錄的權限所有者改爲root
chown -R mysql:mysql /usr/database/mysql5.7/data/   #把data目錄的權限所有者改爲mysql

 

 

 

 

 

6、啓動mysql

/usr/database/mysql5.7/bin/mysqld_safe --user=mysql &

 

 

7、修改密碼

 #進入mysqlbin文件夾
 cd /usr/database/mysql5.7/bin/
 ./mysql -u root -p # 默認沒有密碼,直接敲回車就可以
 #切換使用數據庫
 use mysql;
 #修改root用戶密碼
 update user set authentication_string=password('密碼') where user='root';
 #刷新
 flush privileges;
 exit;

 

 

 

 

 

 

 

8、登錄測試

cd /usr/database/mysql5.7/bin/
./mysql mysql -u root -p
#輸入密碼後,應該就連接上了
show databases;
exit; #退出

 

 

 

 

9、複製mysql啓動腳本並將其添加到服務且設置爲開機啓動

#mysql啓動腳本爲:/usr/database/mysql5.7/support-files/mysql.server
cp /usr/database/mysql5.7/support-files/mysql.server  /etc/init.d/mysql

#添加服務
chkconfig --add mysql   

# 顯示服務列表
chkconfig --list    

# 開機啓動
chkconfig --level 345 mysql on

# 測試添加的服務是否能用
service mysql status #查看狀態
service mysql start  #啓動mysql服務
service mysql stop   #停止mysql服務

 

 

 

 

 

 

 

 

其他

設置外網訪問

在mysql的bin目錄下執行:mysql -uroot -p密碼 登陸到數據:
    執行:use mysql;
    執行:select host,user from user;
可以看到user爲root,host爲localhost的話,說明mysql只允許本機連接,那麼外網,本地軟件客戶端就無法連接了。

    調整方法:
        執行:update user set host='%' where user ='root';
        執行刷新:flush privileges;
    OK!現在可以訪問了!
    如果還訪問不了,那可能是防火牆問題,修改下防火牆就ok

 

 

 

 

 

 

 

linux登錄

 #進入mysql安裝目錄的bin目錄,然後輸入以下命令

 ./mysql -u root -p

 #然後輸入密碼就登錄成功

 exit;#退出mysql

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章