建議直接考慮docker方案,目前官方的mysql server docker支持arm64,注意只有mysql8支持,也就是latest標簽的
這個和在x86下最常用的mysql鏡像有點區別,簡單翻譯一下官方文檔再補充一些,只說端口訪問的方案:
啟動
docker run --name=mysql1 -d -p 3306:3306 mysql/mysql-server
這版本的mysql啟動很花時間,所以一定要等狀態變化了再操作,用docker ps看狀態,狀態從health: starting變成healthy就行了。
獲取初始密碼,官方這次沒提用環境參數配置密碼這事,是否支持我沒測,按官方的來
docker logs mysql1 2>&1 | grep GENERATED
使用該命令從docker log里獲取初始密碼。之后訪問mysql,不支持跨域,得用容器方法訪問
docker exec -it mysql1 mysql -uroot -p
把剛才密碼輸進去進入mysql的terminal,之后就可以改密碼了。
alter user 'root'@'localhost' identified by 'password';
這里建議把用戶的跨域也改了,畢竟咱要端口訪問的。
use mysql;
update user set host='%' where user='root';
flush privileges;
當然自己建個新用戶是官方推薦也是我比較推薦的做法。
create database mydb;
create user 'userName'@'%' identified by 'password';
grant all privileges on mydb.* to userName@'%';
flush privileges;
以上。