垂直類網(wǎng)站怎么做推廣發(fā)布外鏈的平臺有哪些
MySQL在Centos7環(huán)境安裝
1.切換root用戶
安裝與卸載中,用戶全部切換成為root,安裝好后,普通用戶也能使用
2.卸載不要的環(huán)境
要將自己環(huán)境中有關(guān)mysql的全都刪除,避免安裝過程中被影響
ps axj | grep mariadb
先檢查是否有mariadb
服務(wù)啟動
這種狀態(tài)才是沒有啟動的
如果存在啟動的mariadb服務(wù),執(zhí)行systemctl stop mariadb.service
,再運行ps axj | grep mariadb
3.檢查并卸載系統(tǒng)安裝包
檢查自己的環(huán)境中存不存在其他的安裝包,避免在安裝過程中用錯或產(chǎn)生干擾,使最后安裝結(jié)果的版本不匹配
rpm -qa | grep mariadb
rpm -qa | grep mysql
我的環(huán)境中并沒有,
假設(shè)有其他的包,會顯示包的名稱,例如:
mysql-community-server-5.7.41-1.el7.x86_64
mysql57-community-release-el7-11.noarch
mysql-community-client-5.7.41-1.el7.x86_64
mysql-community-libs-5.7.41-1.el7.x86_64
此時就需要卸載這些默認(rèn)安裝包,執(zhí)行(最好一個一個卸載):
sudo yum remove mariadb
然后檢查是否有文件/etc/my.cnf
,執(zhí)行ls /etc/my.cnf
,然后做個備份
4.獲取mysql官方y(tǒng)um源
檢查自己系統(tǒng)版本:cat /etc/redhat-release
我的是不常用的示范機(jī),裝的是阿里云的linux系統(tǒng)
正常應(yīng)該是顯示centos版本,例如:
瀏覽器輸入:Index of /232905
注意:最好安裝和自己系統(tǒng)?致的mysql版本,否則可能會存在軟件兼容性問題
找到后下載到你的本地,然后上傳到你的Linux服務(wù)器
然后右鍵選擇查看網(wǎng)頁源代碼,這樣會顯示出來版本號全稱
找mysql57開頭的,后綴是elX-X的(大概在一百五十多行)
然后在當(dāng)前目錄新建一個文件夾MySQL
mkdir MySQL
cd MySQL
然后上傳剛下載的mysql文件
我這里使用rz
命令,不需要用xftp
,可以先使用yum
下載(sudo yum install lrzsz
)
5.安裝mysql yum源
查看本地yum源,安裝前后進(jìn)行對比,命令ls /etc/yum.repos.d/ -al
,(我們的肯定不相同,但是可以看到?jīng)]有mysql相關(guān)的yum源)
安裝,使用rmp,命令rpm -Uvh mysql57-community-release-el7-9.noarch_.rpm
(后邊跟你自己的包的名稱,注意版本號)
再次查看yum源,會發(fā)現(xiàn)多了兩個mysql相關(guān)的
再看看能不能工作,輸入命令yum list |grep mysql
(需要等待幾秒,我只截取了部分,后邊還有很多)
6.安裝mysql服務(wù)
執(zhí)行命令yum install -y mysql-community-server
有可能會報錯,如下:
這種情況是密匙過期,執(zhí)行命令rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-2022
就能解決
然后再次執(zhí)行安裝命令
成功!
7.查看配置文件和數(shù)據(jù)存儲位置
/etc/my.cnf
此文件是mysql配置文件
/var/lib/mysql
此文件是存儲mysql數(shù)據(jù)的文件
8.啟動服務(wù)
執(zhí)行命令systemctl start mysqld.service
查看啟動服務(wù),執(zhí)行命令ps axj |grep mysqld
,可以看到已經(jīng)啟動了
9.登錄方法
我們現(xiàn)在還不知道密碼,正常情況執(zhí)行mysql -uroot
是還登錄不上的,有幾種登錄方式,我直接挑一種大部分場景都可以用的:直接跳過密碼驗證進(jìn)行登錄,需要進(jìn)行mysql配置
執(zhí)行命令vim /etc/my.cnf
,然后在最后一行加上skip-grant-tables
然后按esc:wq!
保存配置
配置完以后需要重啟mysql服務(wù),執(zhí)行命令systemctl restart mysqld
啟動mysql,執(zhí)行命令mysql -uroot
登錄成功!
10.設(shè)置密碼
mysql> use mysql;
mysql> update mysql.user set authentication_string = password('新密碼') where user='root';
mysql> flush privileges;
mysql> quit;
然后把配置文件改回來。就是把之前在/etc/my.cnf
加的那一行刪除了,然后重啟mysql服務(wù)systemctl restart mysqld
,這次進(jìn)行登錄,但是需要在結(jié)尾加上-p
,不加是不需要輸入密碼的登錄方式
成功登錄!
11.開機(jī)自啟動(選擇性設(shè)置)
執(zhí)行命令:
systemctl enable mysqld
systemctl daemon-reload
12.my.cnf配置
配置?下my.cnf
,主要是數(shù)據(jù)庫客戶端和服務(wù)器的編碼格式
我這里配置了如上三種,配置完畢后重啟mysql服務(wù)即可systemctl restart mysqld
可選配置:
- port=3306: 這個設(shè)置指定了 MySQL 服務(wù)器監(jiān)聽的端口號。默認(rèn)情況下,MySQL 使用端口號 3306 來接收客戶端的連接。你可以根據(jù)需要修改這個值,但通常情況下不需要更改。
- character-set-server=utf8: 這個設(shè)置指定了 MySQL 數(shù)據(jù)庫服務(wù)器的默認(rèn)字符集。在這種情況下,字符集被設(shè)置為 UTF-8,這是一種通用的字符編碼,支持多種語言的字符集。設(shè)置數(shù)據(jù)庫的字符集是非常重要的,特別是當(dāng)數(shù)據(jù)庫需要存儲和處理多語言數(shù)據(jù)時。
- default-storage-engine=innodb: 這個設(shè)置指定了 MySQL 數(shù)據(jù)庫服務(wù)器的默認(rèn)存儲引擎。在這種情況下,存儲引擎被設(shè)置為 InnoDB。InnoDB 是 MySQL 中最常用的存儲引擎之一,它支持事務(wù)、外鍵和行級鎖等特性,通常被用于處理事務(wù)性的數(shù)據(jù)。MySQL 還支持其他存儲引擎,如 MyISAM、Memory 等,每種存儲引擎都有其自身的特點和適用場景。
- datadir=/var/lib/mysql: 這個設(shè)置指定了 MySQL 數(shù)據(jù)庫服務(wù)器的數(shù)據(jù)目錄。在這個配置中,數(shù)據(jù)目錄被設(shè)置為 /var/lib/mysql,這是 MySQL 默認(rèn)的數(shù)據(jù)存儲位置。
- socket=/var/lib/mysql/mysql.sock: 這個設(shè)置指定了 MySQL 數(shù)據(jù)庫服務(wù)器的套接字文件路徑。在這個配置中,套接字文件路徑被設(shè)置為 /var/lib/mysql/mysql.sock,MySQL 客戶端可以通過這個套接字與服務(wù)器進(jìn)行通信。
- symbolic-links=0: 這個設(shè)置禁用了 MySQL 數(shù)據(jù)庫服務(wù)器中的符號鏈接,以預(yù)防各種安全風(fēng)險。
- log-error=/var/log/mysqld.log: 這個設(shè)置指定了 MySQL 數(shù)據(jù)庫服務(wù)器的錯誤日志文件路徑。在這個配置中,錯誤日志文件被設(shè)置為 /var/log/mysqld.log。
- pid-file=/var/run/mysqld/mysqld.pid: 這個設(shè)置指定了 MySQL 數(shù)據(jù)庫服務(wù)器的進(jìn)程 ID 文件路徑。在這個配置中,進(jìn)程 ID 文件被設(shè)置為 /var/run/mysqld/mysqld.pid。