1. 程式人生 > >Linux安裝mysql(Redhat6.5+MySQL5.7)(轉載+原創補漏)

Linux安裝mysql(Redhat6.5+MySQL5.7)(轉載+原創補漏)

controls 新版 file grep gin leg 下載 set CP

這裏我創建了一目錄software用於存放我們待會要下載的mysql包,先去到該目錄

命令:cd /software
命令:wget http://mirrors.sohu.com/mysql/MySQL-5.7/mysql-5.7.17-linux-glibc2.5-x86_64.tar

技術分享圖片

下載完成後,你會在software這個目錄下看到多出了空色框的文件

二、建立用戶,以及mysql的目錄

1、groupadd mysql #建立一個mysql的組
2、useradd -r -g mysql mysql #建立mysql用戶,並且把用戶放到mysql組
3、passwd mysql #給mysql用戶設置一個密碼

三、解壓mysql

1、把tar包移動到/usr/local 目錄下
mv /software/mysql-5.7.17-linux-glibc2.5-x86_64.tar /usr/local
2、解壓
cd /usr/local

tar xvf mysql-5.7.17-linux-glibc2.5-x86_64.tar.gz

技術分享圖片
tar zxvf mysql-5.7.17-linux-glibc2.5-x86_64.tar.gz

技術分享圖片
【多出目錄 mysql-5.7.17-linux-glibc2.5-x86_64】
註意:沒有data 目錄,my.ini 在support-files 目錄

3、改一下目錄名字為/usr/local/mysql (linux下mysql的默認安裝安裝目錄)

mv mysql-5.7.17-linux-glibc2.5-x86_64 mysql

技術分享圖片

四、配置相關的啟動配置文件(my-default.cnf和mysql.server文件在/usr/local/mysql/support-files下

1、復制my-default.cnf 到 /etc/my.cnf (mysqld啟動時自動讀取)
cp my-default.cnf /etc/my.cnf

2、復制mysql.server 到/etc/init.d/ 目錄下【目的想實現mysqld -install這樣開機自動執行效果】
【/etc/init.d/ 目錄,等效於註冊表HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\services 記錄有那些服務】
cp mysql.server /etc/init.d/mysql (mysql是服務名)

技術分享圖片

3、修改 /etc/init.d/mysql 參數
vi /etc/init.d/mysql
給與2個目錄位置
basedir=/usr/local/mysql
datadir=/usr/local/mysql/data

技術分享圖片
4、給目錄/usr/local/mysql 更改擁有者
chown -R mysql:mysql /usr/local/mysql/

技術分享圖片
5、解決一下亂碼問題
vi /etc/my.cnf

[mysql]
default-character-set=utf8

[mysqld]
default-storage-engine=INNODB
character_set_server=utf8

技術分享圖片

五、初始化 mysql 的數據庫

mysql_install_db (老版本的做法)
新版本:
1.初始化
bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data

生成出一個data目錄,代表數據庫已經初始化成功
並且mysql的root用戶生成一個臨時密碼:5!uipdk>qmg?(生成的)

技術分享圖片

2.給數據庫加密
bin/mysql_ssl_rsa_setup --datadir=/usr/local/mysql/data

技術分享圖片

3.啟動mysql

bin/mysqld_safe --user=mysql &

技術分享圖片
【檢查ps -ef|grep mysql】

PS: 在這裏我以為mysql已經啟動了,但是其實沒有,還需要/etc/init.d/mysql start 再次啟動:

技術分享圖片

六、進入客戶端

1.登錄 ./mysql -uroot -p

如果報錯信息為:

技術分享圖片

解決方法:刪除了 /tmp/mysql.sock.lock文件

命令:rm -f /tmp/mysql.sock.lock

技術分享圖片
2.修改密碼
set password=password(‘123456‘);

技術分享圖片

七、遠程訪問 (即你用Windows系統能訪問Linux系統的mysql)

我們先看看數據結構:

技術分享圖片

現在我們的Windows系統是無法訪問到虛擬機下的Linux系統的mysql的,因為沒有權限

1、授權
grant all privileges on *.* to root@‘%‘ identified by ‘123456‘;
select host,user from user; 【多出1條遠程登錄用戶記錄】
flush privileges;

技術分享圖片

現在用Windows系統訪問我Linux系統的mysql,你會發現依然是不能訪問,那是因為防火墻沒有關

命令:mysql -h(你Linux系統的ip地址)-uroot -p123456

技術分享圖片

2、關閉防火墻或者給防火墻開放端口
systemctl stop firewalld.service

成功訪問後的效果圖如下:

技術分享圖片

八、設置開機自動啟動

1、添加服務mysql
chkconfig --add mysql 【mysqld -install】
2、設置mysql服務為自動
chkconfig mysql on

技術分享圖片
3、重啟檢查
init 6
ps -ef|grep mysql

九、設置path

vi /etc/profile
export PATH=$JAVA_HOME/bin:/usr/local/mysql/bin:$PATH

技術分享圖片

參考博客:https://www.cnblogs.com/zczc1996/p/6270521.html

版權聲明:本文為博主在其他博主的文章下再加工博文,轉載請註明出處,謝謝!

Linux安裝mysql(Redhat6.5+MySQL5.7)(轉載+原創補漏)