博客 / 詳情

返回

AlmaLinux下mysql 8安裝與數據遷移

首先安裝mysql server

sudo yum install mysql-community-server.x86_64

啓動服務並設為開機啓動

sudo systemctl start mysqld
sudo systemctl enable mysqld

此時使用root賬號登陸mysql,發現有未知默認密碼,因此通過跳過密碼的方式登錄

首先修改配置文件/etc/my.cnf,在[mysqld]區域增加一行skip-grant-tables並保存,執行命令sudo systemctl restart mysqld來重啓mysql服務

執行mysql -u root -p登錄,遇到密碼直接回車,在mysql命令行中清空密碼

use mysql;
update user set authentication_string = '' where user = 'root';
exit;

退出mysql命令行後,去掉/etc/my.cnf中加的那行配置,並重啓服務,再次登錄,無密碼直接回車

alter user 'root'@'localhost' identified by '${password}';
flush privileges;
exit;

注意mysql 8對密碼複雜度有強要求,過於簡單的密碼會設置失敗,若要設置簡單密碼,可參考Ubuntu下,MySQL密碼遺失時修改密碼,注意要先設置一次密碼才能修改密碼策略,且密碼策略變量名與文中不同,注意區分

接下來創建新的mysql賬號用以在代碼中連接使用(這裏我使用的賬號是soul)

use mysql;
create user 'soul'@'%' identified by '${password}';
grant all privileges on *.* to 'ctrip'@'%' with grant option;
flush privileges;
exit;

 原始數據庫機器上命令行導出原數據庫的庫表和數據,並將文件傳到新機器上

mysqldump -u soul -p --databases ${dbname] > ${filename}.sql

登錄mysql命令行,導入數據庫表和數據

source /${filepath}/${filename}.sql;
exit;

 

user avatar
0 位用戶收藏了這個故事!

發佈 評論

Some HTML is okay.