sudo yum -y install gcc gcc-c++ autoconf libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel zlib zlib-devel glibc glibc-develglib2 glib2-devel bzip2 bzip2-devel ncurses ncurses-devel curl curl-devele krb5 krb5-devel libidn libidn-devel openssl openssl-devel openldap openldap-devel nss_ldap openldap-clients openldap-serversphp
#nginx所須要的庫文件件html
sudo yum -y install pcre-deve l zlib-deve l gd gd-deve l freetype net-tools
yum -y install pcre*java
#PHP依賴的庫文件
sudo yum -y install gd-devel libjpeg-devel libpng-devel freetype-devel libxml2-devel curl-devel
yum -y install mysql mysql-devel //儘量用源碼編譯安裝
yum -y install mysql-server //儘量用源碼編譯安裝
mysql -uroot -p #登錄方式 node
3.登陸MySQL修改密碼
mysql -uroot -S /opt/mysql/3306/mysql.sock
mysql> flush privileges;
mysql> set password for root@'localhost'= password('miaohr1qaz');mysql
4.登陸數據庫給multi用戶添加權限
mysql -uroot -S /opt/mysql/3306/mysql.sock -pmiaohr1qaz
mysql> GRANT SHUTDOWN ON *.* TO 'multi'@'localhost' IDENTIFIED BY 'multi';linux
5.設置root遠程訪問
mysql> UPDATE mysql.user SET Host='%' WHERE Host='localhost';
mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%';
mysql> FLUSH PRIVILEGES;
nginx
nginx 安裝c++
./configure --prefix=/usr/nginxsql
make
make install數據庫
匹配nginx.conf開啓
location ~ \.php$ {
root html;
fastcgi_pass 127.0.0.1:9000
fastcgi_index index.php
fastcgi_param SCRIPT_FILENAME /usr/nginx/html$fastcgi_script_name;
include fastcgi_params;
}
啓動nginx
/usr/nginx/sbin/nginx
重啓
/usr/nginx/sbin/nginx -s reload
php安裝方法
mysql_config 沒有的話是由於沒有安裝mysql-devel
(mysql_config 是一個綠色的可執行文件)
./configure --prefix=/data/local/php \
--enable-fpm \
--with-zlib \
--enable-mbstring \
--with-openssl \
--with-mysqli \
--enable-mysqlnd \
--with-mysql-sock \
--with-gd \
--enable-gd-native-ttf \
--enable-pdo \
--with-pdo-mysql \
--with-gettext \
--with-curl \
--enable-sockets \
--enable-bcmath \
--enable-xml \
--with-bz2 \
--enable-zip \
-enable-pcntl
make
make install
從php的解壓包裏
cp php.ini-development /usr/php/lib/php.ini
在/usr/php/etc/裏
cp /usr/php/etc/php-fpm.conf.default /usr/php/etc/php-fpm.conf
date.timezone = 「Asia/Shanghai」
default_charset = "utf-8"
而後啓動nginx,mysql 和/usr/php/sbin/php-fpm
ps aux | grep -c php-fpm 查看狀態
服務器1
cluster.name: ejiqun
node.name: node1
node.rack: r1 #機架號 最好不一樣
path.data: /elastic_data/data
path.logs: /elastic_data/logs
network.host: 192.168.1.210
http.port: 9200
transport.tcp.port: 9300 #設置節點之間交互的端口號
discovery.zen.ping.timeout: 120s #設置集羣中自動發現其餘節點時ping鏈接的超時時間
discovery.zen.ping.multicast.enabled: true #設置是否打開多播發現節點
discovery.zen.ping.unicast.hosts: ["192.168.1.210:9300", "192.168.1.211:9300"]
服務器2
cluster.name: ejiqun
node.name: node2
node.rack: r2 #機架號 最好不一樣
path.data: /elastic_data/data
path.logs: /elastic_data/logs
network.host: 192.168.1.211
http.port: 9200
transport.tcp.port: 9300 #設置節點之間交互的端口號
discovery.zen.ping.timeout: 120s #設置集羣中自動發現其餘節點時ping鏈接的超時時間
discovery.zen.ping.multicast.enabled: true #設置是否打開多播發現節點
discovery.zen.ping.unicast.hosts: ["192.168.1.210:9300", "192.168.1.211:9300"]
安裝jdk
去http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html中下載jdk的安裝文件。因爲個人Linux是32位的,所以我下載jdk-8u25-linux-i586.tar.gz文件。
新建/usr/java文件夾,將jdk-8u25-linux-i586.tar.gz放到該文件夾中,並將工做目錄切換到/usr/java目錄下。
執行命令tar -zxvf jdk-8u25-linux-i586.gz 進行解壓,解壓後發現/usr/java多了一個jdk1.8.0_25文件夾。
經過以上步驟,jdk就已經所有安裝完成了。下面,就是環境變量的配置。
配置環境變量
使用vim /etc/profile編輯profile文件
在/etc/profile底部加入以下內容
JAVA_HOME=/usr/java/jdk1.8.0_25
PATH=$JAVA_HOME/bin:$PATH
CLASSPATH=$JAVA_HOME/jre/lib/ext:$JAVA_HOME/lib/tools.jar
export PATH JAVA_HOME CLASSPATH
以上,環境變量配置完成。須要注意的是,PATH在配置的時候,必定要把$JAVA_HOME/bin放在前面,否則使用java命令時,系統會找到之前的java,再不往下找了。這樣java這個可執行文件運行的目錄其實不在$JAVA_HOME/bin下,而在其它目錄下,會形成很大的問題。
還要注意,之前其它教程寫的CLASSPATH=$JAVA_HOME/lib.tools.jar,不知道之前的版本是怎麼樣的,如今的版本是沒有這樣的jar包的。
最後使用source /etc/profile讓profile文件當即生效。
命令測試
使用javac命令,不會出現command not found錯誤
使用java -version,出現版本爲java version "1.8.0_25"
echo $JAVA_HOME, echo $CLASSPATH, echo $PATH,看看本身的配置是否都正確。
elasticsearch-jdbc使用
第一步:環境匹配
1)elasticsearch 2.3.3 成功安裝部署
2)mysql安裝成功,增刪改查無誤~~。
3)要保證elasticsearch-jdbc的版本要與elasticsearch的版本是一致的(下面的內容會提示下載)。不然會報錯,沒法進行以後的步驟。
(例如elasticsearch-jdbc-2.3.3.0-dist.zip(對應的你的elaseticsearh-2.3.3)
第二步:下載JDBC工具
選擇你須要的版本進行下載。(例如elasticsearch-jdbc-2.3.3.0-dist.zip(對應的你的elaseticsearh-2.3.3) ,下載後綴爲dist.zip的便可)
地址:
http://xbib.org/repository/org/xbib/elasticsearch/importer/elasticsearch-jdbc/
解壓下載的文件unzip elasticsearch-jdbc-2.3.3.0-dist.zip
解壓下載的文件unzip elasticsearch-jdbc-2.3.3.0-dist.zip
建立mysql腳本計劃任務
cd /elasticsearch-jdbc-2.3.3.0/bin/ (在bin目錄下創建咱們的新腳本)
vi import_es.sh
#!/bin/sh
bin=/elasticsearch-jdbc-2.3.3.1/bin
lib=/elasticsearch-jdbc-2.3.3.1/lib
echo '{
"type" : "jdbc",
"jdbc": {
"elasticsearch.autodiscover":true,
"elasticsearch.cluster":"ejiqun",
"url":"jdbc:mysql://10.0.8.7:3306/bo",
"user":"caiyun",
"password":"bo2016.",
"sql":"select email from members",
"elasticsearch" : {
"host" : "192.168.48.129",
"port" : 9300
},
"index" : "test",
"type" : "ffcs"
}
}' | java \
-cp "${lib}/*" \
-Dlog4j.configurationFile=${bin}/log4j2.xml \
org.xbib.tools.Runner \
org.xbib.tools.JDBCImporter
爲 import_es.sh 添加可執行權限。
chmod a+x import_es.sh //(a+x 是給全部人加上可執行權限,包括全部者,所屬組,和其餘人 o+x 只是給其餘人加上可執行權限)
執行腳本:./import_es.sh
第五步:檢測數據是否新增成功
curl 'localhost:9200/_cat/indices?pretty' //索引是否有新增呢??
curl -XGET 'http://localhost:9200/test/ffcs/_search?pretty' //抓取顯示數據
經過各類條件查詢curl 'localhost:9200/test/ffcs/_search?pretty' -d '{ "filter":{"term":{"name":"john"}}}'