1. 程式人生 > >redhat7.0 mysql安裝

redhat7.0 mysql安裝


系統版本:redhat7.0  64bit

mysql 版本:mysql-5.7.10-1.el7.x86_64.rpm-bundle.tar

到mysql官網下載mysql安裝包

下載之後拷貝到liunx系統上,例如在/home/mysql下

首先先檢視是否已經安裝了mysql ,執行命令 rpm -qa|grep mysql,如果什麼都沒顯示說明沒有安裝過,如果已經安裝了Mysql就先解除安裝執行命令 rpm -e --nodeps   xxxxxxxxxxxxxxxxxxxx(xxxxxxxxxxxxxxxxxxxx為已經安裝的rpm)

檢視是否安裝mariadb 系統自帶的,我之前安裝的時候和mysql衝突,所有不用這個資料庫的話也可以解除安裝,檢視是否安裝rpm -qa|grep mariadb,解除安裝執行rpm -e --nodeps xxxxxxxxxxxxxxxxxx.

接下里進入/home/mysql 

執行命令:tar mysql-5.7.10-1.el7.x86_64.rpm-bundle.tar 解壓

解壓之後又很多檔案,我們只需要安裝

mysql-community-common-5.7.10-1.el7.x86_64.rpm

mysql-community-libs-5.7.10-1.el7.x86_64.rpm

mysql-community-server-5.7.10-1.el7.x86_64.rpm

mysql-community-client-5.7.10-1.el7.x86_64.rpm

因為依賴包的關係,所有注意安裝順序以下依次安裝

rpm -ivh mysql-community-common-5.7.10-1.el7.x86_64.rpm

rpm -ivh mysql-community-libs-5.7.10-1.el7.x86_64.rpm

rpm ivh mysql-community-server-5.7.10-1.el7.x86_64.rpm

rpm ivh mysql-community-client-5.7.10-1.el7.x86_64.rpm

安裝完後開始初始化資料庫,進入/usr/bin

執行命令mysqld --initialize --user=mysql或者mysqld --initialize-insecure --user=mysql

第一個命令是為root使用者隨機生成一個登陸密碼,登陸時執行名mysql -u root -p,密碼在/var/log/mysqld.log檔案中可以檢視

第二個命令不會為root使用者生成密碼,登陸時執行mysql -u root --skip-password

在初始化過程中可能會出現[ERROR] --initialize specified but the data directory exists. Aborting.

遇到這種情況,就將資料目錄刪除或重新命名後,重新再試一次。

我來簡單說明一下,也就是在初始化之前,先檢查一下資料目錄是否存在,執行命令:ls  -l  /var/lib|grep mysql。若有,則執行命令:

rm  -rf  /var/lib/mysql,將其刪除;

顯示開始啟動Mysql服務,執行命令 systemctl start mysqld

如果啟動不起來,有可能是你的seliunx阻止了,進入/etc/seliunx/config  修改SELIUNX為disabled

然後在啟動服務,啟動後執行命令mysql -u root -p

輸入密碼就可登陸成功。



當root密碼忘記後怎麼登陸?

執行 vi /etc/my.cnf 在[mysqld]後新增

skip-grant-tables

儲存退出,執行 :wq  重啟服務:systemctl restart mysqld

 登陸mysql : mysql -u root 

現在已經可以登入了,執行命令:

UPDATE mysql.user SET authentication_string = PASSWORD('123456') WHERE User = 'root' AND Host = 'localhost';  修改root密碼為123456並且執行命令:FLUSH PRIVILEGES; 重新整理許可權。

現在在去/etc/my.cnf把剛剛加上的去掉然後重啟服務.

現在重新登入mysql -u root -p 輸入密碼123456就可以重新登了,登入之後它可能會提示密碼過於簡單要求改密碼,執行命令SET PASSWORD = PASSWORD('123456!abcd'); 就可以了。


我之前安裝的時候不知道為什麼不能用隨機生成的密碼登入,然後我就是用忘記root密碼的方式登入