溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

linux運(yùn)維學(xué)習(xí)之二進(jìn)制格式安裝

發(fā)布時(shí)間:2020-07-10 20:07:04 來源:網(wǎng)絡(luò) 閱讀:600 作者:村頭沈師傅 欄目:MySQL數(shù)據(jù)庫

    本周給大家?guī)淼氖顷P(guān)于mysql的二進(jìn)制格式的安裝,我們對(duì)于mysql的安裝一般有兩種方式,一是通過yum安裝,二是通過二進(jìn)制格式的安裝,第一種方法yum安裝的方式非常簡(jiǎn)單,如下:

    Centos6:yum install mysql-server
    Centos7:yum instlal mariadb-server

    但是簡(jiǎn)單的背后就是各種限制,數(shù)據(jù)庫文件被限制,配置文件也被限制,軟件版本的限制,我們只能被動(dòng)的使用,而如果我們使用二進(jìn)制格式的安裝就可以指定數(shù)據(jù)庫文件放在什么地方,配置文件也都是我們自己制定,有利于靈活的使用,還有新版本的使用,還有一種不方便的安裝方式,那便是自己手動(dòng)編譯安裝,因?yàn)閙ysql文件其實(shí)蠻大的,編譯過后可能超過10G,而且編譯也需要大量的時(shí)間,所以我們就把別人編譯過得二進(jìn)制文件拿過來安裝,本次實(shí)驗(yàn)是基于Centos7,安裝包為mariadb-10.2.8-linux-x86_64.tar.gz

    首先,我們需要新建一個(gè)mysql的用戶,出于安全設(shè)置其登錄方式為/sbin/nologin,指定其家目錄為/app/mysqldb,我的這個(gè)/app是專門新建的一個(gè)文件夾,因?yàn)橐院笪覀兊臄?shù)據(jù)庫文件會(huì)放在這里,在生產(chǎn)環(huán)境中,該文件夾中的數(shù)據(jù)庫會(huì)越來越大,如果我們使用的是lvm邏輯卷的方式,還可以擴(kuò)展,而使用的普通分區(qū)就盡量選擇大一點(diǎn)的文件夾,新建用戶代碼如下:

useradd -d /app/mysqldb -r -m -s /sbin/nologin mysql

    我們需要在https://downloads.mariadb.org/獲取mariadb-10.2.8-linux-x86_64.tar.gz,然后解壓縮到指定的目錄/usr/local/,這個(gè)是固定的目錄,不可更改,我們卻切換到該目錄下,為了方便我們把該目錄進(jìn)行鏈接為/mysql

tar xvf mariadb-10.2.8-linux-x86_64.tar.gz  -C /usr/local/
cd /usr/local/
ln -s mariadb-10.2.8-linux-x86_64/ mysql

    做完這些我們查看了一下,在/etc下并沒有關(guān)于mysql的相關(guān)配置,所以需要我們自己來完成該配置文件的完成,新建了一個(gè)mysql的目錄,是為了便于管理,畢竟/etc下的文件很多,找到我們新建的文件中的[mysqld]的下面加入我們需要的三行代碼,

mkdir /etc/mysql/                
cd /usr/local/mysql/ 
cp support-files/my-huge.cnf  /etc/mysql/my.cnf
vim /etc/mysql/my.cnf
[mysqld]
datadir = /app/mysqldb     #指定數(shù)據(jù)庫的目錄
innodb_file_per_table = on #將每個(gè)表都放在單獨(dú)的文件夾中
skip_name_resolve = on     #禁止主機(jī)名解析(不關(guān)閉,會(huì)導(dǎo)致數(shù)據(jù)庫運(yùn)行慢)

    然后我們開始指定安裝,我們還在/usr/local/mysql/下,為什么要這樣安裝呢,是因?yàn)閯e人在編譯腳本里已經(jīng)寫死了,所以我們?cè)谶@個(gè)相對(duì)路徑下,才能安裝成功

scripts/mysql_install_db  --user=mysql --datadir=/app/mysqldb

    安裝過后,為了使我們以后的使用更加方便,所以我們需要我們進(jìn)行以下操作:

cp  support-files/mysql.server  /etc/init.d/mysqld
chkconfig --list mysqld   #查看chkconfig中是否有我們的mysqld
chkconfig --add mysqld    #添加mysqld進(jìn)入chkconfig
service mysqld start      #啟動(dòng)mysqld,跟系統(tǒng)應(yīng)用一樣的方式,不過這一步注定會(huì)失敗

    失敗的原因是什么呢?缺少日志文件,或者說對(duì)日志沒有讀寫的權(quán)限,所以我們要更改我們要更改文件夾的所有者或者使用ACl,為了簡(jiǎn)便,我使用了改變所有者的方式:

mkdir /var/log/mariadb/
chown mysql /var/log/mariadb/
service mysqld start          #啟動(dòng)成功

    然后我們需要把執(zhí)行路徑修改一下,因?yàn)槲覀儾荒苁褂枚即虺鋈柯窂?,那樣也太蠢了?/span>

vi /etc/profile.d/mysql.sh       #寫入文件,以后也能生效
PATH=/usr/local/mysql/bin:$PATH  #增加到PATH中
 . /etc/profile.d/mysql.sh      #source一下,生效。

    然后我們的mysql就算完成了,為什么說算呢?因?yàn)?/span>安全隱患:mysql安裝之后,有安全隱患,無論什么身份只要在本機(jī),就能以root登錄mysql,mysql可以匿名鏈接,不過權(quán)限不大,也算是小安全隱患

解決:

/usr/bin/mysql_secure_installation

    這個(gè)腳本是個(gè)交互式的,不過很簡(jiǎn)單,我們?cè)诶锩骊P(guān)閉匿名登錄,和設(shè)置口令就可以保證mysql的進(jìn)一步的安全,不過下一次登錄時(shí),需要輸入密碼;

mysql -uroot -p  #-u[user] [-hhost]不寫默認(rèn)本機(jī)登錄 -p[PASSWD] 就是口令

     至此我們的mysql的二進(jìn)制的安裝就完成了,然后就可以愉快的使用了!


    

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI