1. 程式人生 > >Linux記錄-安裝LAMP和R環境

Linux記錄-安裝LAMP和R環境

2.2 Apache httpd
2.2.1 執行命令進行安裝:yum install -y httpd
2.2.2 開啟服務:service httpd start
2.2.3 設定開機自啟動:
chkconfig | grep httpd --檢視 httpd 啟動狀態
chkconfig httpd on --設定 httpd 開機自啟動
netstat -lntp | grep httpd --檢視 httpd 埠資訊
ps -aux | grep httpd --檢視 httpd 程序資訊
2.2.4 修改配置檔案 hosts 和 httpd.cnf
vi /etc/hosts:新增主機地址對映 10.2.1.169 Linux-1


vi /etc/httpd/conf/httpd.conf 修改以下資訊:
Listen 10.2.1.169:80 註釋原來的 Listen
ServerName Linux-1
關閉防火牆:service iptables stop
關閉 SELINUX 控制:vi /etc/selinux/config
#SELINUX=enforcing #註釋掉
#SELINUXTYPE=targeted #註釋掉
SELINUX=disabled #增加
:wq! #儲存退出
#setenforce 0 #使配置立即生效
2.2.5 修改預設目錄:vi /etc/httpd/conf/httpd.conf,找到 Directory
“/var/www/html”改成”/opt/serve/app”。

2.2.6 重啟 httpd 服務,客戶機瀏覽器輸入: http://10.2.1.169/進行
測試
2.3 MySQL
2.3.1 執行命令進安裝:yum install -y mysql mysql-server
2.3.2 開啟服務:service mysqld start
2.3.3 設定開機自啟動:
netstat -lntp | grep mysqld --檢視 mysqld 埠資訊
chkconfig | grep mysqld --檢視 mysqld 啟動狀態
chkconfig mysqld on --設定 mysqld 開機自啟動
2.3.4 複製配置檔案
cp /usr/share/mysql/my-medium.cnf /ect/my.cnf

2.3.5 登入測試:mysql -u root -p 輸入 root 的密碼即可。
2.3.6 新建普通使用者
root 許可權新建使用者:insert into mysql.user(Host,User,Password)
values("localhost","mysql",password("1"));
root 使用者授予某一個數據庫的所有許可權給使用者:grant all privileges
on test.* to [email protected] identified by '1';
刷新系統許可權表 flush privileges
授予使用者在資料庫的某些許可權:grant select,delete,update,create,drop
on test to [email protected] identified by "1";
2.4 php
2.4.1 執行命令進行安裝:yum install -y php*
2.4.2 修改 Apache-httpd 配置檔案
在/etc/httpd/conf/httpd.conf 中,
找到:AddType application/x-gzip .gz .tgz
在後面新增:
AddType application/x-httpd-php .php(使 Apcche 支援 PHP)
AddType application/x-httpd-php-source .php5
找到 DirectoryIndex index.html index.html.var 新增 index.php
2.4.3 修改 php 配置檔案
在/etc/php.ini 加入
;extension=/usr/lib64/php/modules/pdo_mysql.so #pdo 配置連
接 mysql
2.4.4 重啟 httpd 和 mysqld 服務:
service httpd restart service mysqld restart
2.4.5 測試:
在/opt/serve/app/目錄下以 root 許可權新建一個.php 檔案,加入
以下程式碼: <?php $conn=mysql_connect('localhost','root','1');
if ($conn) echo "OK...";
else echo "NO..."; ?> ,然後瀏覽器測試,顯示 OK 即成功連線
Mysql。

-------------------------------------------------------------------------------------------------

2.5 R
2.5.1 安裝 R 語言依賴項
yum install gcc-gfortran
yum install gcc gcc-c++
yum install readline-devel
yum install libXt-devel
yum -y install java-1.7.0-openjdk*
yum -y install xz-devel.x86_64
yum -y install epel-release
yum install openssl
yum -y install bzip2-devel
2.5.2 安裝 R 語言環境:yum install -y R
2.6 Rserve
2.6.1.終端進入 R,安裝 Rserve
> install.packages('Rserve') --安裝,選擇地區 CRAN
2.6.2 啟動 Rserve
在 R 中啟動:> library(Rserve) --載入 Rserve >Rserve() --啟動
在終端命令啟動:R CMD Rserve
檢視程序 ~ ps -aux|grep Rserve
檢視埠 ~ netstat -nltp|grep Rserve
遠端連線啟動:R CMD Rserve --RS-enable-remote
2.6.3 檢視配置資訊~R CMD Rserve --RS-settings
config file: /etc/Rserv.conf
working root: /tmp/Rserv
port: 6311
local socket: [none, TCP/IP used]
authorization required: yes
plain text password: allowed
passwords file: [none]
allow I/O: yes
allow remote access: yes
control commands: yes
interactive: yes
max.input buffer size: 262144 kB
2.7 RMySQL
2.7.1 安裝依賴項
yum install -y libdbd-mysql mysql-devel
2.7.2 安裝 RMySQL
終端進入 R,安裝 RMySQL >install.packages(“RMySQL”)
2.7.3 啟動 MySQL
進入 RMysql >library(RMySQL)
檢視 RMySQL 的說明文件 >help(package=”RMySQL”)
2.7.4 建立 Mysql 連線
conn<-dbConnect(MySQL(),dbname="test",username="root",password=
"1" ,host=”127.0.0.1”,port=”3306”)
2.7.5 常用函式介紹
dbGetQuery --傳送查詢語句,把結果以資料框形式返回。
dbSendQuery --傳送查詢,返回的結果是繼承"DBIResult"子類的物件。
dbDisconnect --關閉連線
dbWriteTable --寫資料庫表
dbReadTable --讀資料庫表
2.8 Rserve-php 客戶端
開源網站 GitHub 下載程式包,只需引用 config.php 與 Connection.php
檔案即可。主要用來 PHP 與 R 之間的通訊,載入 R 指令碼。
require_once __DIR__ . '/inc/config.php';
require __DIR__ . '/inc/Connection.php';
$r = new Rserve_Connection(RSERVE_HOST);
$cmd ="source(\"/var/www/html/webadmin/t.R\")"; --R 檔案路徑
$run=$r->evalString($cmd,Rserve_Connection::PARSER_NATIVE);
$cm ="task('$ccount','$u')"; --傳參
$run = $r->evalString($cm,Rserve_Connection::PARSER_NATIVE);
2.9 shell (載入 R 指令碼)
PHP 端:php 呼叫 shell:shell_exec("./lgm.sh {$ccount} {$u}");
shell 端:shell 獲取 php 引數,載入 R 指令碼:
#!/bin/sh Rscript lgmtrend.R $1 $2;
R 端:R 獲取引數呼叫 task 方法:
Args <- commandArgs()
cat("Args[1]=",Args[1],"\n")
cat("Args[2]=",Args[1],"\n")
cat("Args[3]=",Args[3],"\n")
cat("Args[4]=",Args[4],"\n")
cat("Args[5]=",Args[5],"\n")
cat("Args[6]=",Args[6],"\n")
cat("Args[7]=",Args[7],"\n")
task(Args[6],Args[7])
2.10 安裝其他 R 包 包
library(forecast); library(lubridate);
1.直接在 R 下安裝,install.packages(“forecast”),最新的 R 版本搜不到;
2.開源網站下載相關安裝包 原始碼編譯./configure make make install 或
終端輸入 R CMD INSTALL 包名.tar.gz
2.11 mysql 備份方式
1.mysqldump:
匯入:先建資料庫,mysql -u root -p db_lxb<db_lxb.sql
use db_lxb source db_lxb.sql
匯出:mysqldump -u root -p db_lxb>db_lxb.sql
2.Load:
匯入: :load data local infile 'E:\\Data\\weather.csv'into table test.weather
character set utf8 fields terminated by ',' optionally enclosed by '"'
escaped by '"' lines terminated by '\r\n';
匯出:select 語句 into outfile '/opt/serve/app/weather_new.csv'
fields terminated by ',' optionally enclosed by '"' escaped by '"'
lines terminated by '\r\n';