1. 程式人生 > >?編譯安裝 mariadb

?編譯安裝 mariadb

技術 查看 sysconf useradd debug rip nbsp mil support

編譯安裝 mariadb-10.2.12.tar.gz

1查詢本地是否已經安裝mysql(卸載之否則會報錯);

rpm -qa | grep mysql

[root@user ~ 13]#rpm -qa | grep mysql


2.安裝相關開發包組:

yum -y groupinstall development tools

yum cmake ncurses-devel gnutls-devel libaio-devel


3.查詢用戶:(若用戶已經存在不用常見)

getent passwd mysql

[root@user ~ 16]#getent passwd mysql


4..創建mysql系統用戶:

useradd -r mysql -s /sbin/nologin

[root@user ~ 17]#useradd -r mysql -s /sbin/nologin

mysql:x:990:305::/home/mysql:/sbin/nologin


5.解壓源碼包 mariadb-10.2.12.tar.gz

tar xvf mariadb-10.2.12.tar.gz -C /usr/local/

[root@user ~ 25]#tar xvf mariadb-10.2.12.tar.gz -C /usr/local/


6.cd進解壓目錄

[root@user ~ 25]#cd /usr/local/

[root@user /usr/local 26]#ls

bin etc games include lib lib64 libexec mariadb-10.2.12 mysql sbin share src


7..執行cmake make && make install (預計時間30分鐘)

cmake . \

-DCMAKE_INSTALL_PREFIX=/app/mysql \

-DMYSQL_DATADIR=/mysqldb/ \

-DSYSCONFDIR=/etc \

-DMYSQL_USER=mysql \

-DWITH_INNOBASE_STORAGE_ENGINE=1 \

-DWITH_ARCHIVE_STORAGE_ENGINE=1 \

-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \

-DWITH_READLINE=1 \

-DWITH_SSL=system \

-DWITH_ZLIB=system \

-DWITH_LIBWRAP=0 \

-DMYSQL_UNIX_ADDR=/tmp/mysql.sock \

-DDEFAULT_CHARSET=utf8 \

-DDEFAULT_COLLATION=utf8_general_ci \

-DMYSQL_UNIX_ADDR=/tmp/mysql.sock \

-DENABLED_LOCAL_INFILE=1 \

-DWITH_PARTITION_STORAGE_ENGINE=1 \

-DWITH_DEBUG=0 \

-DWITHOUT_MROONGA_STORAGE_ENGINE=1

make && make install


8.把/app目錄下的mysql目錄 屬主mysql 屬組mysql

chown -R mysql.mysql mysql/ (危險操作)


9.準備mysql的配置文件;support-file目錄裏所有以.cnf結尾的配置模版文件拷貝到etc下加以修改即可:

cp -a myhuge.cnf /etc/my.cnf (-a 保留權限)

技術分享圖片

10.拷貝mysql.server 文件到 /etc/init.d/mysqld.sh(啟動fw)

cp -a mysql.server /etc/init.d/mysqld.sh

技術分享圖片

11.初始化數據庫:

cd /app/mysql/

scripts/mysql_installl_db --user=mysql --datadir=/data/mtsqldb

指定以mysql用戶的身份 路徑在配置文件指定(數據存放位置) 也可以寫在這裏

=看到OK 沒有報錯表示初始化成功;

技術分享圖片

=

=12.添加開機啟動

#chkconfig --add mysqld

#chkconfig mysqld on

[root@centos7 /app/mysql 106]#chkconfig --list mysqld

Note: This output shows SysV services only and does not include native

systemd services. SysV configuration data might be overridden by native

systemd configuration.

If you want to list systemd services use 'systemctl list-unit-files'.

To see services enabled on particular target use

'systemctl list-dependencies [target]'.

mysqld 0:off 1:off 2:on 3:on 4:on 5:on 6:off


13.啟動服務:

#systemctl start mysqld

ss -tnl 查看3306是否處於監聽狀態

技術分享圖片


14.編譯安裝完成

mysql默認沒有密碼 記得設置mysql root用戶的密碼 運行安全腳本


?編譯安裝 mariadb