tar -xvf mysql-8.0.16-linux-glibc2.12-x86_64.tar.xz
mkdir /usr/local/mysql
mkdir /usr/local/mysql/data
mv mysql-8.0.16-linux-glibc2.12-x86_64/* /usr/local/mysql
groupadd mysql
useradd -r -g mysql mysql
轉到mysql目錄下
cd /usr/local/mysql
修改當前目錄為mysql使用者
chown -r mysql:mysql ./
初始化資料庫
bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data
注:這個命令和mysql5.7之前的命令不一樣了,之前命令是:bin/mysql_install_db --user=mysql,但是之後的版本已經被mysqld --initialize替代
若發現mysql_install_db沒有這個檔案,所以在bin下建立這個檔案,並且配置許可權
mkdir mysql_install_db
chmod 777 ./mysql_install_db
若報錯:bin/mysqld: error while loading shared libraries: libnuma.so.1: cannot open shared object file: no such file or directory
則yum安裝numactl,命令為:yum -y install numactl
再次執行"bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data"
注:mysql5.7版本之上會初始化話乙個密碼,在這裡要記住這個初始化密碼,在下面初次登入會用上(kulin_%y8nyw)
修改許可權配置
chown -r root:root ./ //修改當前使用者為root使用者
chown -r mysql:mysql data //修改當前的data目錄為mysql使用者
注:如果/usr/local/mysql/目錄下沒有tmp檔案,手動建立,並且配置許可權
mkdir tmp
chmod 777 ./tmp
cp support-files/my-default.cnf /etc/my.cnf
注:如果沒有my-default.cnf就手動建立乙個檔案,並且配置許可權
vim support-files/my-default.cnf
chmod 777 ./support-files/my-default.cnf
重新執行「cp support-files/my-default.cnf /etc/my.cnf」,然後修改/etc/my.cnf檔案:
vim /etc/my.cnf
[mysqld]
basedir = /usr/local/mysql
datadir = /usr/local/mysql/data
port = 3306
socket = /usr/local/mysql/tmp/mysql.sock
#指定使用者密碼加密方式
default_authentication_plugin=mysql_native_password
#必填項
sql_mode=no_engine_substitution,strict_trans_tables
[client]
socket = /usr/local/mysql/tmp/mysql.sock
將/ support-files/mysql.server 拷貝為/etc/init.d/mysql並設定執行許可權,這樣就可以使用service mysql命令啟動/停止服務
cp support-files/mysql.server /etc/init.d/mysql
chmod +x /etc/init.d/mysql
註冊啟動服務:
chkconfig --add mysql
檢視是否新增成功
chkconfig --list mysql
顯示:mysqld 0:off 1:off 2:on 3:on 4:on 5:on 6:off
systemctl start mysql
systemctl stop mysql
systemctl restart mysql
vim /etc/profile
檔案中寫入:export path=$path:/usr/local/mysql/bin:/usr/local/mysql/lib
儲存退出之後,讓檔案生效source /etc/profile
mysql -uroot -p ccs<-h=yu0os //後面是系統生成的密碼
注:mysql 8.0 預設使用 caching_sha2_password 身份驗證機制 —— 從原來的 mysql_native_password 更改為 caching_sha2_password。
從 5.7 公升級 8.0 版本的不會改變現有使用者的身份驗證方法,但新使用者會預設使用新的 caching_sha2_password,恰恰客戶端不支援新的加密方式。
所以,使用
alter user 'root'@'%' identified with mysql_native_password by 'root';
修改密碼,而不是
alter user 'root'@'localhost' identified by 'root'; //修改root密碼
執行use mysql;
執行update user set host = '%' where user = 'root';這一句執行完可能會報錯,不用管它。
執行flush privileges;
原始碼安裝MySQL 8 0 16
原始碼安裝mysql 8.0.16 root nginx 1.解包 root nginx tar xvf mysql 8.0.16 linux glibc2.12 x86 64.tar.xzmysql依賴於libaio 庫。如果未在本地安裝此庫,則資料目錄初始化和後續伺服器啟動步驟將失敗。如有必要,...
mysql 8 0 16忘記密碼
親測有效,但是有重要資料檔案的,慎重!我的my.ini沒有動 mysql mysqld port 3306 basedir d mysql 8.0.16 winx64 datadir d mysql 8.0.16 winx64 data max connections 20 character se...
MySQL 8 0 16 初次配置
以管理員許可權開啟cmd,進入到mysql解壓後的目錄,進入到bin中 執行 mysqld initialize console 螢幕上出現的提示中,會包含root的臨時密碼,下面用root賬號登入時要使用這個臨時密碼,如 2019 07 20t08 43 08.847893z 5 note my ...