下文內(nèi)容主要給大家?guī)韒ysql8.0的安裝和初始化使用教程,這里所講到的知識(shí),與書籍略有不同,都是創(chuàng)新互聯(lián)專業(yè)技術(shù)人員在與用戶接觸過程中,總結(jié)出來的,具有一定的經(jīng)驗(yàn)分享價(jià)值,希望給廣大讀者帶來幫助。
為丹鳳等地區(qū)用戶提供了全套網(wǎng)頁設(shè)計(jì)制作服務(wù),及丹鳳網(wǎng)站建設(shè)行業(yè)解決方案。主營(yíng)業(yè)務(wù)為成都網(wǎng)站設(shè)計(jì)、網(wǎng)站制作、外貿(mào)營(yíng)銷網(wǎng)站建設(shè)、丹鳳網(wǎng)站設(shè)計(jì),以傳統(tǒng)方式定制建設(shè)網(wǎng)站,并提供域名空間備案等一條龍服務(wù),秉承以專業(yè)、用心的態(tài)度為用戶提供真誠的服務(wù)。我們深信只要達(dá)到每一位用戶的要求,就會(huì)得到認(rèn)可,從而選擇與我們長(zhǎng)期合作。這樣,我們也可以走得更遠(yuǎn)!安裝
因?yàn)閙ysql官方和以往一樣,給出二進(jìn)制包的方式,所以和以往安裝方式并沒有太大差別
首先官網(wǎng)下載二進(jìn)制包,然后就可以正常解壓縮安裝了,我習(xí)慣了下面的方式
tar xf mysql-8.0.11-linux-glibc2.12-x86_64.tar.gz mv mysql-8.0.11-linux-glibc2.12-x86_64 /usr/local/ cd /usr/local/ ln -sf mysql-8.0.11-linux-glibc2.12-x86_64/ mysql80 mkdir -p /data/mysql/data80 groupadd mysql useradd -g mysql -s /sbin/nologin mysql其實(shí)二進(jìn)制包也沒什么安裝概念,都是拿來就用
-注意:操作前要確保沒有其他mysql發(fā)行版干擾,特別是yum安裝的和rpm安裝,
#查看已安裝的rpm包中又沒有mysql和mariadb的安裝包 rpm -qa |grep -E 'mysql|mariadb' mariadb-libs-5.5.44-2.el7.centos.x86_64 #刪除查找出來的rpm安裝包 rpm -e --nodeps mariadb-libs-5.5.44-2.el7.centos.x86_64 rpm -e --nodeps mysql.x86_64初始化使用
1.初始化
其實(shí)和mysql5.7沒什么差別
/usr/local/mysql80/bin/mysqld --defaults-file=/usr/local/mysql80/my.cnf --initialize然后密碼也在之前一樣的地方
sed -n '/password/p' /data/mysql/data80/mysql.err .....A temporary password is generated for root@localhost: %pqGI?ATQ4fg,記得啟動(dòng)前要把權(quán)限設(shè)置一下再啟動(dòng)
chown -R mysql:mysql /data/mysql/data* /usr/local/mysql80/support-files/mysql.server start先用mysql8.0自帶的mysql客戶端和初始化密碼登進(jìn)去,后面會(huì)說為什么要這么干
/usr/local/mysql80/bin/mysql -uroot -p'%pqGI?ATQ4fg' -S /tmp/mysql80.sock -P3308改密碼方式也是和5.7一樣的
mysql> alter user 'root'@'localhost' identified by '123'; mysql> set password for 'root'@'localhost'=password('123'); mysql> update mysql.user set authentication_string=password('123') where user='root' and Host = 'localhost'; mysql> flush privileges;這個(gè)時(shí)候,你如果用默認(rèn)的mysql客戶端登陸,可能就會(huì)有這個(gè)報(bào)錯(cuò)
mysql -uroot -p123 -P3308 -S /tmp/mysql80.sock mysql: [Warning] Using a password on the command line interface can be insecure. ERROR 2059 (HY000): Authentication plugin 'caching_sha2_password' cannot be loaded: /usr/local/mysql/lib/plugin/caching_sha2_password.so: cannot open shared object file: No such file or directory在mysql5.7環(huán)境里,雖然可以設(shè)置default_authentication_plugin來改變認(rèn)證加密方式,但是一般人不會(huì)去設(shè)置.在mysql8.0下,默認(rèn)變成了default_authentication_plugin=caching_sha2_password,包括你剛初始化的root用戶也是這個(gè)認(rèn)證加密方式,這樣的結(jié)果是讓你除非用新的協(xié)議驅(qū)動(dòng),例如必須用8.0自帶的mysql客戶端才行,不然就連接不上數(shù)據(jù)庫.這樣就必然造成不兼容的情況,幸好,是可以改回舊的方式的.
vim my.cnf [mysqld] default_authentication_plugin=mysql_native_password但是,這個(gè)參數(shù)只對(duì)新授權(quán)的用戶生效,舊的root密碼還是用舊的方式,類似下面這樣
#先用新客戶端登陸 /usr/local/mysql80/bin/mysql -uroot -p123 -P3308 -S /tmp/mysql80.sock #查看各用戶情況 mysql> select Host,User,plugin,authentication_string from mysql.user; +-----------+------------------+-----------------------+------------------------------------------------------------------------+ | Host | User | plugin | authentication_string | +-----------+------------------+-----------------------+------------------------------------------------------------------------+ | localhost | mysql.infoschema | mysql_native_password | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE | | localhost | mysql.session | mysql_native_password | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE | | localhost | mysql.sys | mysql_native_password | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE | | localhost | root | caching_sha2_password | $A$005$.Sf}Q/Jh>3b6CjI5/vMJVDIQbS1dbFWaCVuiby7aX3ZY4lB6/M7Vvny5DUA | +-----------+------------------+-----------------------+------------------------------------------------------------------------+ 4 rows in set (0.00 sec)可以看到plugin是不一樣的,密碼的加密方式也很明顯不一致造成差異.
然后我們?cè)傩陆ㄒ粋€(gè)用戶,就可以看到是和以前一樣了
mysql> select Host,User,plugin,authentication_string from mysql.user; +-----------+------------------+-----------------------+------------------------------------------------------------------------+ | Host | User | plugin | authentication_string | +-----------+------------------+-----------------------+------------------------------------------------------------------------+ | % | sroot | mysql_native_password | *E56A114692FE0DE073F9A1DD68A00EEB9703F3F1 | | localhost | mysql.infoschema | mysql_native_password | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE | | localhost | mysql.session | mysql_native_password | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE | | localhost | mysql.sys | mysql_native_password | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE | | localhost | root | caching_sha2_password | $A$005$.Sf}Q/Jh>3b6CjI5/vMJVDIQbS1dbFWaCVuiby7aX3ZY4lB6/M7Vvny5DUA | +-----------+------------------+-----------------------+------------------------------------------------------------------------+ 5 rows in set (0.00 sec)再次用默認(rèn)的mysql客戶端登陸
mysql -usroot -p123123 -P3308 -S /tmp/mysql80.sock mysql> \s -------------- mysql Ver 14.14 Distrib 5.7.20, for linux-glibc2.12 (x86_64) using EditLine wrapper Connection id: 17 Current database: Current user: sroot@localhost SSL: Not in use Current pager: stdout Using outfile: '' Using delimiter: ; Server version: 8.0.11 MySQL Community Server - GPL Protocol version: 10 Connection: Localhost via UNIX socket Server characterset: utf8 Db characterset: utf8 Client characterset: utf8 Conn. characterset: utf8 UNIX socket: /tmp/mysql80.sock Uptime: 1 hour 25 min 18 sec Threads: 2 Questions: 120 Slow queries: 0 Opens: 230 Flush tables: 2 Open tables: 203 Queries per second avg: 0.023 --------------解決了一個(gè)兼容性問題了.
2.授權(quán)
上面說了創(chuàng)建一個(gè)用戶,在mysql8.0創(chuàng)建用戶和授權(quán)和之前不太一樣.其實(shí)也不能說不一樣,而是說更嚴(yán)格,需要先創(chuàng)建用戶和設(shè)置密碼,然后才能授權(quán).
#先創(chuàng)建一個(gè)用戶 create user 'sroot'@'%' identified by '123123'; #再進(jìn)行授權(quán) grant all privileges on *.* to 'sroot'@'%' with grant option;如果按以前的方式來做,那就會(huì)報(bào)語法錯(cuò)誤
grant all privileges on *.* to 'sroot'@'%' identified by '123123'; ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'identified by '123123'' at line 1所以授權(quán)用戶要注意方法了
3.參數(shù)變更
因?yàn)榘婷嬗邢?我沒有貼出my.cnf文件,而由于一些特性的原因,mysql8.0一些配置和之前的不太一樣,下面來列舉我發(fā)現(xiàn)的.
query_cache徹底消失了,在mysql5.7還需要手動(dòng)設(shè)置為關(guān)閉,現(xiàn)在可以不用理會(huì)了,所以相應(yīng)的兩個(gè)參數(shù)就可以注釋掉了
#query_cache_size=0 #query_cache_type=0innodb_undo_logs不能再設(shè)置了,在mysql8.0里,undo獨(dú)立表空間是默認(rèn)開啟的,而且值為2,也就是默認(rèn)兩個(gè),但是不能設(shè)innodb_undo_logs這個(gè)參數(shù)來指定回滾段大少,回滾段默認(rèn)就是128
#innodb_undo_logs其實(shí)暫時(shí)沒發(fā)現(xiàn),待發(fā)現(xiàn)再補(bǔ)上
然后也發(fā)現(xiàn)系統(tǒng)表現(xiàn)在都是innodb引擎,其實(shí)之前也在特性里看到了.
對(duì)于以上關(guān)于mysql8.0的安裝和初始化使用教程,如果大家還有更多需要了解的可以持續(xù)關(guān)注我們創(chuàng)新互聯(lián)的行業(yè)推新,如需獲取專業(yè)解答,可在官網(wǎng)聯(lián)系售前售后的,希望該文章可給大家?guī)硪欢ǖ闹R(shí)更新。
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)cdcxhl.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡(jiǎn)單易用、服務(wù)可用性高、性價(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場(chǎng)景需求。
分享文章:mysql8.0的安裝和初始化使用教程-創(chuàng)新互聯(lián)
轉(zhuǎn)載來源:http://jinyejixie.com/article18/pijgp.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供外貿(mào)網(wǎng)站建設(shè)、軟件開發(fā)、營(yíng)銷型網(wǎng)站建設(shè)、定制開發(fā)、網(wǎng)站內(nèi)鏈、企業(yè)網(wǎng)站制作
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容