1. 程式人生 > 實用技巧 >非root使用者在CentOS7下安裝MySQL5.7

非root使用者在CentOS7下安裝MySQL5.7

一、建立MySQL使用者

groupadd mysql

useradd -g mysql -s /sbin/nologin mysql

注意:切換使用者時如果報錯

This account is currently not available.


用cat看看 mysql 的帳號資訊

cat /etc/passwd | grep mysql

發現它的shell是“/sbin /nologin”,需要改成“/bin/bash”

vim /etc/passwd

修改完畢後,儲存退出

二、下載MySQL 5.7二進位制包

下載頁面:https://dev.mysql.com/downloads/mysql/5.7.html#downloads

OS選擇:linux generic,按照系統版本下載。

wget https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.32-linux-glibc2.12-x86_64.tar.gz

解壓:

tar -zxvf mysql-5.7.32-linux-glibc2.12-x86_64.tar.gz

三、配置MySQL

例如把mysql資料放在data/mysql目錄,建立目錄。

mkdir -pv data/mysql

建立錯誤日誌唯一指定路徑

cd mysql
mkdir err

四.編輯my.cnf配置檔案

編輯my.cnf配置檔案,放在當前mysql安裝目錄下,依次執行以下命令

$ cd mysql	      #進入安裝目錄
$ vim my.cnf	      #編輯配置檔案

編輯my.cnf檔案

我的mysql的路徑是/home/mysql/mysql,需根據自己的路徑進行修改

[client]
port=3306                                       #服務埠
socket=/home/mysql/mysql/mysql.sock             #指定套接字檔案
[mysql]
port=3306                                       #服務埠
socket=/home/mysql/mysql/mysql.sock
[mysqld]
port=3306                                       #服務埠
basedir=/home/mysql/mysql                       #mysql安裝路徑
datadir=/home/mysql/data/mysql                   #資料目錄
pid-file=/home/mysql/mysql/mysql.pid            #指定pid檔案
socket=/home/mysql/mysql/mysql.sock             #指定套接字檔案
log_error=/home/mysql/mysql/err/error.log            #指定錯誤日誌
server-id=100                                   #Mysql主從唯一標識
[mysqld_safe]
socket=/home/mysql/mysql/mysql.sock             #指定套接字檔案

非root使用者配置環境變數

注意:這一步適用於非root使用者安裝,其他步驟一樣

1.設定使用者環境變數vi .bash_profile   或者是  vi   ~/.bashrc

Java:
vim .bash_profile

export JAVA_HOME=/home/java/jdk1.8.0_45

export JAVA_BIN=/home/java/jdk1.8.0_45/bin

export JRE_HOME=/home/java/jdk1.8.0_45/jre

export PATH=$JAVA_HOME/bin:$PATH

export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

source .bash_profile

Mysql:
vim .bash_profile

export PATH=$PATH:/home/mysql/bin

source .bash_profile

五.安裝啟動mysql

安裝:依次執行以下命令,指定配置檔案安裝並初始化mysql,沒有報錯即安裝成功

$ cd bin
$ ./mysqld --defaults-file=/home/mysql/mysql/my.cnf --initialize --user=mysql --basedir=/home/mysql/mysql --datadir=/home/mysql/data/mysql		#安裝並初始化mysql

啟動:依次執行以下命令,沒有報錯並能成功監聽3306埠即表示啟動成功

./mysql -u root -p -S /home/apps/mysql/mysql.sock


 netstat -antlp|grep 3306

如果提示

執行下面的命令進行安裝

yum -y install net-tools

檢視程序

ps -ef|grep mysql

六.登入mysql

獲取初始密碼,初始密碼在error.log日誌檔案內,執行以下命令

cd /home/mysql/mysql/bin

less error.log|grep root@localhost

2.登入mysql,直接輸入登入命令 bin/mysql -u root -p 有可能會報以下錯

有兩種解決方法

如果本機上沒有其他資料庫,可以通過軟連線方式將尋找sock檔案的路徑指向我們mysql安裝目錄下的sock檔案

也可以直接指定mysql.sock檔案啟動,執行以下命令:

./mysql -u root -p -S /home/mysql/mysql/mysql.sock

3.成功登入mysql後,修改登入密碼,執行以下sql語句

SET PASSWORD FOR 'root'@'localhost' = PASSWORD('root');	--設定登入密碼為root
flush privileges;

七.開啟遠端訪問

1.使用第三方工具連線mysql資料庫時,需要提前開啟mysql的遠端訪問限制,執行以下sql語句

use mysql;		--切換至mysql資料庫
select User,authentication_string,Host from user;		--檢視使用者認證資訊


2.修改許可權,允許其他地址的主機訪問mysql,這裡密碼是root,實際根據自己的來,%代表所有主機,也可以具體到ip地址

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'root';

再次查表可以發現多了個使用者,表示成功開啟遠端訪問,可以使用工具遠端連線

select User,authentication_string,Host from user;

完成