centos環(huán)境,mysql可以用非root(普通用戶)安裝么?
問題描述
centos6.8i386,mysql5.7.17,看mysql的文檔好像只有使用root權(quán)限安裝。
可是這樣不是不符合安全原則么?還是說所謂安全,只要是非root用戶啟動(dòng)就好,安裝的話是root還是非root都無所謂?
那么有非root用戶編譯安裝mysql的教程么?我當(dāng)然在網(wǎng)上搜到了很多,可是都不能成功,或者無法初始化。還有一些自己對(duì)cmake時(shí)編譯的宏命令理解錯(cuò)誤,參數(shù)對(duì)照文檔也是過時(shí)的。
所以,一般企業(yè),或者說按照管理的安全準(zhǔn)則,mysql應(yīng)該怎么安裝?以及,究竟怎么用非root安裝編譯mysql?
問題解答
回答1:編譯不用root就可以,安裝也不是不可以,就是mysql默認(rèn)的許多目錄都是只有管理員權(quán)限才才有寫的權(quán)限。所以只能管理員權(quán)限安裝。自己安裝可以安裝在自己的目錄下面,我沒有試過,不過可能源碼里面可能有寫路徑要自己手動(dòng)設(shè)置。
關(guān)于安裝準(zhǔn)則,可以用root安裝呀,運(yùn)行的時(shí)候可以用其他權(quán)限運(yùn)行。
回答2:之所以要root安裝是因?yàn)槟J(rèn)安裝時(shí)需要往一些重要的目錄(比如/usr/xxx,/usr/local/,/bin/, /etc/等)寫入一些文件(比如可執(zhí)行文件mysql,mysqld寫入到bin文件夾下,依賴文件寫入到lib文件夾下,配置文件my.cnf寫入到/etc/下)
那么只要配置安裝目錄(./configure --prefix 安裝路徑)在你的用戶目錄下就不用root權(quán)限啦,但是install完之后要運(yùn)行它就去安裝目錄的bin文件夾下找到可執(zhí)行文件執(zhí)行就好了,注意執(zhí)行時(shí)可能需要指定配置文件的位置(默認(rèn)是/etc/下但你既然不用root安裝那自然不在那里,但它默認(rèn)找配置文件是去那個(gè)地方找)
至于為什么要root安裝? 自然是為了共享資源,節(jié)省空間啦,不然只有你這個(gè)用戶和root用戶能用其他用戶都用不了呀。
至于為什么要用root啟動(dòng)呢?因?yàn)槌绦騿?dòng)后會(huì)在自個(gè)安裝目錄下生成一些亂七八糟的文件呀(比如日志log,數(shù)據(jù)文件data),你如果安裝目錄是root所有它要寫入自然需要root運(yùn)行。
回答3:說mysql的使用吧DBA只能操作mysql數(shù)據(jù)庫,不能動(dòng)日志文件運(yùn)維可以動(dòng)日志文件,當(dāng)不能動(dòng)mysql數(shù)據(jù)庫
有時(shí)間再補(bǔ)充
