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 mysql@localhost identified by '1';
刷新系统权限表 flush privileges
授予用户在数据库的某些权限:grant select,delete,update,create,drop
on test to mysql@localhost 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';

 ############################################################################

1.统计每一天的所有医院门诊总量,按大小排序
SELECT a.vdate,max(a.snum) AS maxnum FROM (
SELECT t.reg_date AS vdate,count(*) AS snum
FROM ccdm_cdc.tm_outclinical t
WHERE t.diag_name_inhos LIKE '%上呼吸道感染%'
GROUP BY vdate ORDER BY snum DESC) a
GROUP BY a.vdate ORDER BY maxnum DESC

2.统计医院每一天的门诊总量最大值

SELECT * FROM (
SELECT t.reg_date AS vdate,t.org_code AS org,count(*) AS snum,
rank() over (partition by t.org_code ORDER BY count(*) desc) AS rank
FROM ccdm_cdc.tm_outclinical t
WHERE t.diag_name_inhos LIKE '%上呼吸道感染%'
group by t.reg_date,t.org_code
) a
WHERE rank<=1 order by snum desc

posted @ 2018-11-27 22:53  信方  阅读(239)  评论(0编辑  收藏  举报