Linux下的 mariadb 使用 root 用戶啓動方式

近日因測試安全產品須要,想調整mariadb的啓動用戶爲root, 經歷一番波折後終於成功!mysql

注意:以root身份啓動mysql是一項很是危險行爲,至關於給了數據庫操做用戶(數據庫管理員或黑客)一個經過mysql對系統直接操做的通道!sql

其實是官方不容許root啓動的, 所以在通常啓動方式下root啓動會返回啓動失敗,並於 /var/log/mariadb/mariadb.log 中提示數據庫

Please consult the Knowledge Base to find out how to run mysqld as root!安全

 


好吧,轉入正題,關於Mariadb 啓動方式:測試

通常人就會操做:  systemctl start mariadbspa

然而這個指令實際上就是調用了  mariadb.service  (具體目錄用find找),執行對 mariadb 進行啓動。rest

mariadb.service 修改配置以下:產品

# vi `find /usr -name 'mariadb.service' ` it

[Unit]mariadb

[Service]

Type=simple

User=mysql      此處修改成  User=root        ||  服務的啓動用戶

Group=mysql    此處修改成  Group=root      ||  服務的啓動組

 

#初始化mysql庫文件的腳本,若是 mysql目錄不爲空會提示 Database Mariadb is probably initialized in /var/lib/mysql already, nothing is done,  若是排錯時看見此內容可忽略

ExecStartPre=/usr/libexec/mariadb-prepare-db-dir %n           

 

#執行mysqld的執行腳本,作了安全檢查,就是這個文件限制root啓動的

ExecStart=/usr/bin/mysqld_safe --basedir=/usr   此處添加參數   --user=root     

 

如下略。。。

 

#systemctl demon-reload

#systemctl restart mariadb

 

PS:一樣操做方式支持mysql以其餘用戶啓動,

BUT   /var/lib/mysql  /var/log/mariadb  這兩個目錄的權限或屬主需做調整。

相關文章
相關標籤/搜索