cp support-files/mysql.server /etc/rc.d/init.d/mysql
?
首先到官網(wǎng)下載tar文件上傳到linux 服務(wù)器上
解壓文件: tar -zxvf? mysql-5.7.26-linux-glibc2.12-x86_64.tar.gz?;
復(fù)制解壓文件到 /usr/local目錄下 在mysql 更目錄下執(zhí)行? mv mysql-5.7.26? /usr/local/mysql? 作用是復(fù)制并重命名
3.新建用戶組合用戶(我也不知道這步的作用,先記錄下來)。在mysql 更目錄下執(zhí)行??groupadd mysql? ? useradd -r -g mysql mysql?
4.修改mysql根目錄用戶權(quán)限?(我也不知道這步的作用,先記錄下來)?chown -R mysql .? ?chgrp -R mysql .? 或者 cd mysql chown -R mysql:mysql??./
5.新建data 目錄? mkdir data? ?新建完后修改權(quán)限? cd data? ?chown?-R mysql:mysql??./
6.初始化 MySQL 配置表?./bin/mysqld --initialize --user=mysql --basedir=/home/mysql --datadir=/home/mysql/data
這時候直接初始化如果報錯 則執(zhí)行 yum install libaio? ?中間按 y 回車
?
檢查etc目錄下是否有 my.cnf文件,若有則先給它如下配置
[mysqld]basedir=/usr/local/mysqldatadir=/usr/local/mysql/datasocket=/usr/local/mysql/tmp/mysql.sockport=3306sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES# skip-grant-tables# Disabling symbolic-links is recommended to prevent assorted security risks# symbolic-links=0[client]socket=/usr/local/mysql/tmp/mysql.sock[mysqld_safe]#log-error=/var/log/mysqld.log#pid-file=/var/run/mysqld/mysqld.pidbasedir=/usr/local/mysqldatadir=/usr/local/mysql/datasocket=/usr/local/mysql/tmp/mysql.sockport=3306sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
在mysql的安裝根目錄新建tmp文件 同時修改其權(quán)限??chown?-R mysql:mysql??./
嘗試啟動mysql? service mysql start(啟動)? ?service mysql stop(停止)? service mysql restart(重啟)
若不能正常啟動則執(zhí)行命令(在mysql安裝目錄執(zhí)行):?
cp support-files/mysql.server /etc/rc.d/init.d/mysql
再次啟動;
啟動后就是連接數(shù)據(jù)庫,整理介紹無密碼登錄
在/etc/my.cnf加入代碼
[mysqld] skip-grant-tables
然后重啟mysql 連接服務(wù)? ./bin/mysql -uroot -p 回車,不輸入密碼直接回車即可登錄
下面才是重點,很多時候到這里就出現(xiàn)很難搞定的問題
首先修改 用戶登錄密碼:
update user set authentication_string = ’password’ where user="root" ;
flush privileges;
退出注釋掉
[mysqld] #skip-grant-tables
然后重啟mysql 服務(wù),再次登錄數(shù)據(jù)庫。我這里遇到的問題是
Access denied for user 'root'@'localhost'
解決辦法是再次以無密碼登錄方式登錄到數(shù)據(jù)庫執(zhí)行
mysql> grant all privileges on *.* to root@'%' identified by '密碼';mysql> flush privileges;
?發(fā)現(xiàn)無密碼條件下,沒有授權(quán)的寫權(quán)限
執(zhí)行上述命令時,我沒有遇到這個問題就解決了,這里做個補充
再次退出注釋掉?
#skip-grant-tables
然后重啟服務(wù)登錄數(shù)據(jù)庫,我這次是成功的,
然后也是重點;修改遠程登錄權(quán)限
mysql> update user set host = ‘%’ where user = ‘root’;
這樣就可以在遠程登錄到數(shù)據(jù)庫了,簡要記錄,后面遇到問題了再補充。
?
來源:http://www.icode9.com/content-2-226351.html聯(lián)系客服