注:操做系統目錄(文件),須要管理員權限mysql
執行:su回車——〉輸入密碼(不可見)——〉回車linux
操做的文件路徑本身決定(我只給出給出模版)sql
1.下載mysql軟件tar包數據庫
2.檢查mysql的用戶組是否存在windows
cat /etc/group |grep mysqlsocket
若是有輸出,mysql:x:27:,代表存在,無需添加,不然添加ui
用戶組:groupadd mysqlthis
用戶:useradd -g mysql mysql加密
3.複製tar包到 /usr/local目錄:cp xx.tar.gz /usr/local,spa
解壓縮:tar -zxvf xx.tar.gz
更名:mv yyy mysql(yyy爲解壓縮後文件夾名稱)
4. 轉到support-files目錄
執行:cp ./my-default.cnf /etc/my.cnf
在my.cnf中添加以下內容:
[mysql]
default-character-set=utf8
[client]
socket=/usr/local/mysql/mysql.sock //若是改路徑,須要添加客戶端文件,語句的位置不能亂放
[mysqld]
default-storage-engine=INNODB
character_set_server=utf8
socket=/usr/local/mysql/mysql.sock //默認在/tmp目錄下,爲臨時文件,每次中止服務自動刪除,建議改到其餘路徑。
5.執行:cp ./mysql.server /etc/init.d/mysqld(複製的時候更名)
在mysqld中添加:
basedir=/usr/local/mysql
datadir=/usr/local/mysql/data
根據mysqld裏面的描述:
# Usually this is put in /etc/init.d (at least on machines SYSV R4 based
# systems) and linked to /etc/rc3.d/S99mysql and /etc/rc0.d/K01mysql.
# When this is done the mysql server will be started when the machine is
# started and shut down when the systems goes down.
爲了讓開機啓動關機暫停
執行:ln -s /etc/init.d/mysqld /etc/rc.d/rc3.d/S99mysql
ln -s /etc/init.d/mysqld /etc/rc.d/rc0.d/K01mysql
6.修改權限
chown -R mysql:mysql /usr/local/mysql/
若是沒有權限設置,mysql無法啓動
7.生成mysql數據
./bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql –datadir=/usr/local/mysql/data
新版本輸出的信息最後有臨時數據庫密碼(記得保存,後續要用)
8.加密數據庫數據
./bin/mysql_ssl_rsa_setup –datadir=/usr/local/mysql/data
9.(1)啓動數據庫服務
service mysqld start
(2)登入數據庫
./bin/mysql -uroot -p回車
輸入密碼(不顯示),回車進入數據庫
10.修改密碼:
set password=password('shyx');
11.退出數據庫
exit(quit)
12.修改環境變量
gedit /etc/profile回車進入文件編輯(或者使用vi)
在「PATH=」的末尾添加「:usr/local/mysql/bin」對於linux的環境變量,以「:」分隔開,不一樣於windows以英文的」;」分隔。
擴展
Linux設置服務自啓動(提供兩種方法)
方法一:chkconfig命令
(1)使用chkconfig查詢服務的重啓狀況,執行命令
chkconfig --list 服務名稱(mysqld)
(2)修改服務的自啓動
chkconfig --level 2345 服務名稱(mysqld)on
方法二:ln -s 創建軟連接
linux裏有7種運行級別(可在/etc/inittab文件裏設置),每種運行級別對應着/etc/rc.d/rc[0~6].d共7個目錄,
若是想實現服務的自啓動,須要操做:
(1)將要啓動的腳本、Linux軟件放到/etc/init.d目錄下
(2)執行:ln -s /etc/init.d/服務名 /etc/rc.d/rc[0~6].d/{[S|K]數字[服務名](K爲kill、S爲start,數字越小,優先級越高)
手動啓動服務的方法
(1) /etc/init.d/服務名 start
(2) service 服務名 start