centos7配置mariadb
阿新 • • 發佈:2018-05-23
centos7配置mariadb一、安裝及配置:
- 下載mariadb:
yum -y install mariadb-server mariadb
- 開啟mariadb服務:
systemctl start mariadb
- 無密碼登錄mariadb:
mysql
- 查看用戶表:
select * from mysql.user\G
- 添加遠程訪問用戶:
grant all on *.* to ‘root‘@‘%‘ identified by ‘123456‘
- 設置添加用戶的授權權限:
update mysql.user set Grant_priv=‘Y‘ where Host=‘%‘
- 移除匿名用戶:
delete from mysql.user where Host<>‘%‘ or User<>‘root‘
- 退出mariadb命令行:
quit
- 重啟mariadb:
systemctl restart mariadb
二、主從復制:
- 服務器列表:
角色 ip地址 主服務器 192.168.8.81 從服務器 192.168.8.82
- 主服務器的配置(192.168.8.81):
a. 配置:
vim /etc/my.cnf
b. 重啟:systemctl restart mariadb
- 從服務器配置(192.168.8.82):
a. 配置:
vim /etc/my.cnf
b. 重啟:systemctl restart mariadb
- 主服務器設置(192.168.8.81):
b. 查看狀態: - 從服務器設置(192.168.8.82):
a. 進入命令行:
b. 配置:
c. 開啟:
d. 查看狀態: - 測試:
a. 主:
b. 從:
三、coreseek(sphinx):
- 安裝依賴:
yum -y install make gcc gcc-c++ libtool autoconf automake imake mariadb mariadb-server mariadb-devel libxml2-devel expat-devel
- 下載軟件包:
a. 克隆:git clone https://github.com/dollarphper/soft.git
b. 進入目錄:
cd soft
- 解壓縮:
tar -xzf coreseek-4.1-beta.tar.gz
- 安裝mmseg:
a. 進入目錄:cd coreseek-4.1-beta/mmseg-3.2.14/
b. 安裝:
./bootstrap ./configure --prefix=/usr/local/mmseg3 make && make install
- 安裝coreseek:
a. 進入目錄:cd ../csft-4.1
b. 修改配置文件:
vim configure.ac將 AM_INIT_AUTOMAKE([-Wall -Werror foreign]) 修改為 AM_INIT_AUTOMAKE([-Wall foreign])
c. 下載軟件:
yum -y install patch
d. 打補丁:
patch -p1 < /home/lee/sphinx/sphinxexpr.cpp-csft-4.1-beta.patch 輸入: /home/lee/sphinx/coreseek-4.1-beta/csft-4.1/src/sphinxexpr.cpp
e. 安裝:sh buildconf.sh ./configure --prefix=/usr/local/coreseek --without-unixodbc --with-mmseg --with-mmseg-includes=/usr/local/mmseg3/include/mmseg/ --with-mmseg-libs=/usr/local/mmseg3/lib/ --with-mysql make && make install
- 測試:
a. 進入測試目錄:cd ../testpack/
b. 查看測試文件:
cat var/test/test.xml
c. 測試中文分詞:/usr/local/mmseg3/bin/mmseg -d /usr/local/mmseg3/etc var/test/test.xml
d. 創建索引:/usr/local/coreseek/bin/indexer -c etc/csft.conf --all
e. 搜索測試:/usr/local/coreseek/bin/search -c etc/csft.conf 李彥宏
- php連接sphinx:
a. 安裝擴展:
a-1. 進入目錄:cd ../csft-4.1/api/libsphinxclient/
a-2. 編譯:
aclocal libtoolize --force automake --add-missing autoconf autoheader make clean ./configure --prefix=/usr/local/sphinxclient make && make install
a-3. 回到軟件包目錄:
cd ../../../../
a-4. 解壓:
tar -xzf sphinx-1.3.0.tgz
a-5. 安裝php-devel:
yum -y install php php-devel
a-6. 進入目錄:
cd sphinx-1.3.0
a-7. 安裝:
phpize ./configure --with-php-config=/usr/bin/php-config --with-sphinx=/usr/local/sphinxclient make && make install
a-8. 開啟php-sphinx擴展:
vim /etc/php.ini在末尾加上: [sphinx] extension=sphinx.so
b. 測試:
b-1. 啟動mariadb服務:systemctl start mariadb
b-2. 添加測試數據:
mysql -uroot -p123456 < /usr/local/coreseek/etc/example.sql
b-3. 復制配置文件:
cp /usr/local/coreseek/etc/sphinx.conf.dist /usr/local/coreseek/etc/csft.conf cp /home/lee/sphinx/coreseek-4.1-beta/mmseg-3.2.14/data/* /usr/local/mmseg3/etc/
b-4. 修改配置文件:
vim /usr/local/coreseek/etc/csft.confsource src1 { type = mysql sql_host = localhost sql_user = root sql_pass = 123456 sql_db = test sql_port = 3306 # optional, default is 3306 sql_query_pre = SET NAMES utf8 sql_sock = /var/lib/mysql/mysql.sock sql_query = SELECT id, group_id, UNIX_TIMESTAMP(date_added) AS date_added, title, content FROM documents sql_attr_uint = group_id sql_attr_timestamp = date_added sql_ranged_throttle = 0 sql_query_info_pre = SET NAMES utf8 sql_query_info = SELECT * FROM documents WHERE id=$id } source src1throttled : src1 { sql_ranged_throttle = 100 } index test1 { source = src1 path = /usr/local/coreseek/var/data/test1 docinfo = extern mlock = 0 morphology = none min_word_len = 1 html_strip = 0 charset_dictpath = /usr/local/mmseg3/etc/ charset_type = zh_cn.utf-8 } indexer { mem_limit = 128M } searchd { listen = 9312 listen = 9306:mysql41 log = /usr/local/coreseek/var/log/searchd.log query_log = /usr/local/coreseek/var/log/query.log read_timeout = 5 client_timeout = 300 max_children = 30 pid_file = /usr/local/coreseek/var/log/searchd.pid max_matches = 1000 seamless_rotate = 1 preopen_indexes = 1 unlink_old = 1 mva_updates_pool = 1M max_packet_size = 8M max_filters = 256 max_filter_values = 4096 max_batch_queries = 32 workers = threads # for RT to work }
b-5. :復制二進制文件:
cp /usr/local/coreseek/bin/* /usr/bin/
b-6. 生成索引:
indexer --rotate --all
b-7. 啟動服務:
searchd
b-8. 停止服務:
searchd --stop
b-9. 測試:
b-9-1. 編寫測試腳本:
vim test.php<?php $sphinx = new SphinxClient(); $sphinx->SetServer("127.0.0.1",9312); $sphinx->SetMatchMode(SPH_MATCH_ALL); $sphinx->SetLimits(0, 20, 1000); $sphinx->SetArrayResult(true); $result = $sphinx -> query("one","test1"); var_dump($result);
b-9-2. 運行腳本:
php test.php四、
centos7配置mariadb