1、創建mysql用戶mysql組(考慮到應用安全)
#groupadd -r mysql 創建mysql組
#useradd -g mysql -r -d /mydata/data 創建mysql用戶
#chownmysql:mysql /mydata/data 更改數據目錄的屬主屬組
2、安裝編譯器cmake
#yum -y installcmake
安裝特定的開發包(防止編譯時出錯)
#yum -y installreadline-devel zlib-devel openssl-dev
下載:
ftp://mirrors.fe.up.pt/pub/mariadb/mariadb-10.0.19/source/mariadb-10.0.19.tar.gz
#tar -zxvfmariadb-10.0.19.tar.gz
# cd mariadb-10.0.19
# cmake .-DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/mydata/data/-DSYSCONFDIR=/etc -DWITH_INNOBASE_STORAGE_ENGINE=1-DWITH_ARCHIVE_STPRAGE_ENGINE=1 -DWITH_BLACKHOLE_STORAGE_ENGINE=1-DWIYH_READLINE=1 -DWIYH_SSL=system -DVITH_ZLIB=system -DWITH_LOBWRAP=0-DMYSQL_UNIX_ADDR=/tmp/mysql.sock -DDEFAULT_CHARSET=utf8-DDEFAULT_COLLATION=utf8_general_ci
**************************************************************************************************************************************
備註:
指定安裝文件的安裝路徑時常用的選項:
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql
-DMYSQL_DATADIR=/data/mysql
-DSYSCONFDIR=/etc
默認編譯的存儲引擎包括:csv、myisam、myisammrg和heap。若要安裝其它存儲引擎,可以使用類似如下編譯選項:
-DWITH_INNOBASE_STORAGE_ENGINE=1
-DWITH_ARCHIVE_STORAGE_ENGINE=1
-DWITH_BLACKHOLE_STORAGE_ENGINE=1
-DWITH_FEDERATED_STORAGE_ENGINE=1
若要明確指定不編譯某存儲引擎,可以使用類似如下的選項:
-DWITHOUT_<ENGINE>_STORAGE_ENGINE=1
比如:
-DWITHOUT_EXAMPLE_STORAGE_ENGINE=1
-DWITHOUT_FEDERATED_STORAGE_ENGINE=1
-DWITHOUT_PARTITION_STORAGE_ENGINE=1
如若要編譯進其它功能,如SSL等,則可使用類似如下選項來實現編譯時使用某庫或不使用某庫:
-DWITH_READLINE=1
-DWITH_SSL=system
-DWITH_ZLIB=system
-DWITH_LIBWRAP=0
其它常用的選項:
-DMYSQL_TCP_PORT=3306
-DMYSQL_UNIX_ADDR=/tmp/mysql.sock
-DENABLED_LOCAL_INFILE=1
-DEXTRA_CHARSETS=all
-DDEFAULT_CHARSET=utf8
-DDEFAULT_COLLATION=utf8_general_ci
-DWITH_DEBUG=0
-DENABLE_PROFILING=1
***************************************************************************************************************************************
# make &&make install
3、準備MariaDB腳本及配置文件
初始化數據庫
#cd /usr/local/mysql
#chown-R mysql:mysql * 更改屬主屬組
#scripts/mysql_install_db--datadir=/mydata/data --user=mysql 初始化庫文件
#chown -R root * 更改屬主爲root
設置開機啓動
#cd /usr/local/mysql
#cpsupport-files/mysql.server /etc/rc.d/init.d/mysqld 提供腳本
#chmod+x /etc/rc.d/init.d/mysqld 賦予執行權限
#chkconfig --add mysqld 添加mysqld爲系統服務
#chkconfigmysqld on 添加爲開機啓動
編譯配置文件
#cd /usr/local/mysql
#cpsupport-files/my-large.cnf /etc/my.cnf
#vim /etc/my.cnf 編輯配置文件[mysqld]段填寫如下內容
[mysqld]
datadir= /mydata/data 數據目錄
thread_concurrency = 4 設置線程數=核心數x2
4、提供二進制文件,庫文件,頭文件,man手冊
提供二進制文件
# echo 'exportPATH=/usr/local/mysql/bin:$PATH' > /etc/profile.d/mysql.sh
提供庫文件
# echo'/usr/local/mysql/lib' > /etc/ld.so.conf.d/mysql.conf
提供頭文件
# ln -sv/usr/local/include /usr/include/mysql
提供man手冊
# echo 'MANPATH/usr/local/mysql' >> /etc/man.config
# man -M /usr/local/mysql/man mysqld 讓man手冊立刻生效爲最新
5、啓動服務,連接MariaDB服務器
啓動服務
#service mysqldstart
#ss -ntl | grep:3306
初始化MariaDB
a、初始化第一個操作
配置文件my.cnf
集中式的配置:多個應用程序共用的配置文件
[mysqld]
[mysqld_safe]
[client]
查看mysql服務器的所有配置信息
#cd /usr/local/mysql/bin
#. /mysqld --help --verbose | head -20
Default options areread from the following files in the given order:
/etc/mysql/my.conf /etc/my.cnf ~/.my.conf
使用配置文件的方式
1、它一次查找每個需要查找的文件,結果是所有文件的並集
2、如果某參數在多個文件中出現多次,後讀取的最終生效
# /user/local/mysql/bin/mysqld --help--verbose
1、顯示mysqld程序啓動時可用的選項,通常都是長選項
2、顯示mysqld的配置文件中可用的服務變量
mysql> SHOW GLOGAL VARIABLES
mysql> SHOW SESSION VARIABLES
b、初始化第二個操作
1、刪除所有匿名用戶
mysql> DROP USER ''@'localhost';
mysql> DROP USER ''@'127.0.0.1';
2、給所有的root用戶設定密碼:
第一種方式
mysql> set password forusrName@hostName = password('your_passwd');
第二種方式
mysql> update user set password =password('your_passwd') where user = 'root'
mysql> flush privileges;
第三種方式 (shell命令)
# mysqladmin -uUserName -hHost password'new_passwd' -p
Host爲遠程mysql服務器的ip地址
# msyqladmin -uUserName -hHost -pflush-privileges;