Linux中安裝MySQL8版本的步驟如下:
1.檢查下libaio.so.1的位置
[root@tdx ]# whereis libaio.so.1
libaio.so: /usr/lib64/libaio.so.1
如果沒有找到該文件
(1).在線安裝
[root@tdx ]# yum install -y libaio
(2).離線安裝:
上傳之后執(zhí)行命令安裝:
[root@tdx /]# rpm -ivh libaio-0.3.107-10.el6.x86_64.rpm
2.清空系統(tǒng)中的原有mariadb的配置文件(/etc/my.cnf)
[root@tdx /]# rm -rf /etc/my.cnf
3.準(zhǔn)備mysql安裝包
(1).切換目錄
[root@tdx /]# cd /tdx/
(2).上傳文件到此目錄
mysql8.0.16-linux-glibc2.12-x86_64.tar.gz
(3).解壓
[root@tdx /]# tar -zxvf mysql8.0.33-linux-glibc2.12-x86_64.tar.gz
(4).重命名
[root@tdx /]# mv mysql8.0.33-linux-glibc2.12-x86_64 mysql8.0.33
(5).切換目錄
[root@tdx /]# cd mysql
(6).新建目錄
[root@mysql]# mkdir data
[root@mysql]# mkdir log
[root@mysql]# mkdir pid
[root@mysql]# mkdir tmp
(7).新建配置文件
[root@mysql]# touch my.cnf
修改配置文件增加內(nèi)容
[root@mysql]# vi my.cnf
增加內(nèi)容
[mysqld]
port = 3306
basedir =/usr/local/mysql
datadir = /usr/local/mysql/data
log-error = /usr/local/mysql/log/mysqld.log
pid-file = /usr/local/mysql/pid/mysqld.pid
socket = /usr/local/mysql/tmp/mysql.sock
character-set-server=utf8
default-storage-engine=Innodb
max_connections=500
lower_case_table_names = 1
interactive_timeout=288000
wait_timeout=288000
net_read_timeout=900
net_write_timeout=900
max_allowed_packet=1073741824
log_bin_trust_function_creators=1
innodb_flush_log_at_trx_commit = 2
sync_binlog = 2000
key_buffer_size=8G
read_buffer_size=64K
sort_buffer_size=256K
myisam_max_sort_file_size=100G
innodb_buffer_pool_size=10G
innodb-buffer-pool-instances=8
innodb_read_io_threads=8
innodb_write_io_threads=8
innodb-file-per-table=true
sql_mode=ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION
4.創(chuàng)建新用戶并授權(quán)
[root@tdx /]# adduser mysql
[root@tdx /]# chown -R mysql:mysql /usr/local/mysql
5.初始化數(shù)據(jù)庫(kù)(可以實(shí)現(xiàn)數(shù)據(jù)庫(kù)的初始化,而且會(huì)產(chǎn)生一個(gè)隨機(jī)密碼)
[root@mysql8.0.33 /]# bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --lower_case_table_names=1
選項(xiàng)說明:
–initialize 初始化(真正開始干活)
–user=mysql 以mysql用戶的身份初始化數(shù)據(jù)庫(kù),產(chǎn)生文件都是mysql作為擁有者
–basedir=xxx mysql其安裝目錄,非常重要
–lower_case_table_names=1 不區(qū)分大小寫,初始化不指定,必須重裝才能解決,非常重要
6.啟動(dòng)MySQL數(shù)據(jù)庫(kù)
[root@mysql]# cp support-files/mysql.server /etc/init.d/mysql
注意:默認(rèn)情況下,GBLIC版本的數(shù)據(jù)庫(kù)要求安裝到/usr/local/mysql目錄,其mysql.server腳本中對(duì)應(yīng)的目錄也是/usr/local/mysql,這會(huì)導(dǎo)致mysql無法啟動(dòng)。所以可以更改其basedir以及datadir兩個(gè)變量
[root@mysql]# vim /etc/init.d/mysql
46行 basedir=/usr/local/mysql
47行 datadir=/usr/local/mysql/data
7.啟動(dòng)MySQL數(shù)據(jù)庫(kù)(不能使用systemctl,只能使用service)
[root@mysql]# service mysql start
Starting MySQL.2023-06-25T04:58:08.333370Z mysqld_safe error: log-error set to ‘/usr/local/mysql/log/mysqld.log’, however file don’t exists. Create writable for user ‘mysql’.
ERROR! The server quit without updating PID file (/usr/local/mysql/pid/mysqld.pid).
[root@mysql]# touch /usr/local/mysql/log/mysqld.log
[root@mysql]# chown -R mysql:mysql /usr/local/mysql/log/mysqld.log
如果啟動(dòng)報(bào)錯(cuò):
my_print_defaults: [Warning] World-writable config file ‘/usr/local/mysql/my.cnf’ is ignored.
Starting MySQL.my_print_defaults: [Warning] World-writable config file ‘/usr/local/mysql/my.cnf’ is ignored.
my_print_defaults: [Warning] World-writable config file ‘/usr/local/mysql/my.cnf’ is ignored.
ERROR! The server quit without updating PID file (/usr/local/mysql/data/localhost.localdomain.pid).
這個(gè)文件:'/usr/local/mysql/my.cnf’權(quán)限給的是 777,需要改成644,再次重新啟動(dòng)即可。
再次啟動(dòng): [root@mysql]# service mysql start
Starting MySQL… SUCCESS!
8.登錄數(shù)據(jù)庫(kù)
[root@mysql]# ./bin/mysql -uroot -p -S /usr/local/mysql/tmp/mysql.sock
9.修改root密碼
mysql> alter user root@localhost identified by ‘Datasw@2023’;
10.創(chuàng)建用戶
mysql> create user test@‘%’;
mysql> alter user test@‘%’ identified with mysql_native_password by ‘Datasw@2023’;
mysql> GRANT ALL PRIVILEGES ON . TO ‘test’@‘%’ WITH GRANT OPTION;
mysql> flush privileges;
mysql> quit;
10.給mysql啟動(dòng)命令增加一個(gè)軟連接,以便任意目錄登錄
[root@mysql]# ln -sf /usr/local/mysql/bin/mysql /usr/bin/
以上步驟全部執(zhí)行成功,就可以使用客戶端鏈接工具鏈接MySQL服務(wù)的數(shù)據(jù)庫(kù)了
- 登錄終端出現(xiàn)的問題如下:
[root@localhost lib]# mysql -uroot -p
Enter password:
ERROR 2002 (HY000): Can’t connect to local MySQL server through socket ‘/tmp/mysql.sock’ (2)
ln -s /usr/local/mysql/tmp/mysql.sock /var/lib/mysql/mysql.sock
解決方法:[root@localhost lib]# ln -s /usr/local/mysql/tmp/mysql.sock /tmp/mysql.sock 即可。
12.對(duì)目錄給予權(quán)限
# chown -R mysql.mysql /data/mysql
5.可能是/usr/local/mysql/data/mysql.pid文件沒有寫的權(quán)限
解決方法 :給予權(quán)限,執(zhí)行 “chown -R mysql:mysql /var/data” “chmod -R 755 /usr/local/mysql/data” 然后重新啟動(dòng)mysqld!
13.創(chuàng)建root用戶對(duì)外鏈接:
mysql> create user root@‘%’;
mysql> alter user root@‘%’ identified with mysql_native_password by ‘Datasw@2023’;
mysql> GRANT ALL PRIVILEGES ON . TO ‘root’@‘%’ WITH GRANT OPTION;
mysql> flush privileges;
mysql> quit;
-
設(shè)置開機(jī)自啟:
復(fù)制操作:如已操作不需要在設(shè)置以下的復(fù)制命令了*****
cp /usr/local/mysql/support-files/support-files/mysql.server /etc/init.d/mysql復(fù)制后賦予權(quán)限:chmod +x /etc/init.d/mysql
添加到服務(wù)列表:chkconfig --add mysql
查看服務(wù)列表:chkconfig --list
設(shè)置開機(jī)自啟: chkconfig --level 345 mysql on最后重啟服務(wù)器即可。使用reboot命令進(jìn)行了執(zhí)行。文章來源:http://www.zghlxwxcb.cn/news/detail-641296.html
15.關(guān)機(jī)命令
常用的命令:文章來源地址http://www.zghlxwxcb.cn/news/detail-641296.html
halt 立即關(guān)機(jī),poweroff 立即關(guān)機(jī), shutdow -h now 立即關(guān)機(jī)(root用戶使用)
shutdown -h 10 10分鐘后自動(dòng)關(guān)機(jī).
shutdown命令:
shutdown命令安全的將系統(tǒng)進(jìn)行關(guān)機(jī),有些用戶會(huì)使用直接斷電的方式來關(guān)閉Linux,這是十分危險(xiǎn)的.因?yàn)閘inux在其后臺(tái)運(yùn)行著許多的進(jìn)程,所以強(qiáng)制關(guān)機(jī)可能會(huì)導(dǎo)致進(jìn)程數(shù)據(jù)額定丟失,使得系統(tǒng)處于不穩(wěn)定的狀態(tài),甚至在有的系統(tǒng)中會(huì)損壞設(shè)備,而在關(guān)機(jī)前使用shutdown命令,系統(tǒng)管理員,會(huì)通知所有登錄的用戶系統(tǒng)將關(guān)閉,并且login指令會(huì)被凍結(jié)﹐即新的用戶不能再登錄。直接關(guān)機(jī)或者延遲一定的時(shí)間才關(guān)機(jī)都是可能的﹐還可能重啟。這是由所有進(jìn)程〔process〕都會(huì)收到系統(tǒng)所送達(dá)的信號(hào)〔signal〕
shutdown執(zhí)行它的工作是送信號(hào)〔signal〕給init程序﹐要求它改變r(jià)unlevel。
到了這里,關(guān)于Linux中安裝MySQL8版本,安裝MySQL步驟,MySQL8離線安裝的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!