零基础学习云计算及大数据DBA集群架构师【企业级运维技术及实践项目2015年1月29日周五】
- LNMP/LEMP项目搭建
- {
- 项目框架 # Linux_____WEB_____PHP_____DB
- # rhel7_____apache__-(libphp5.so)-__php__-(php-mysql)-__mariadb-server
- # rhel7_____nginx___-(spawn-fcgi)-__php__-(php-mysql)-__mariadb-server
- 安装软件包 # WEB 程序
- # CGI 管理器 @作用 ()监听9000端口 ()调用Php命令
- @软件 spawn-fcgi
- # php 程序 php
- # 数据库程序 mariadb-server
- # php-db驱动 php-mysql
- 配置nginx # /etc/nginx/conf.d/
- 配置spawn-fcgi # /etc/sysconfig/spawn-fcgi
- 配置mariadb-server
- 创建数据文件 # 成品的php网站
- 测试
- }
- LNMP/LEMP项目搭建 实验
- {
- [root@serverb ~]# mount 172.25.254.250:/content /mnt
- [root@serverb ~]# rpm -ivh /mnt/item/nginx/other/nginx--.el7.ngx.x86_64.rpm
- [root@serverb ~]# rpm -ivh /mnt/item/nginx/epel/spawn-fcgi--.el7.x86_64.rpm
- [root@serverb ~]# yum install -y php mariadb-server php-mysql
- [root@serverb ~]# cd /etc/nginx/conf.d/
- [root@serverb conf.d]# cp default.conf www.bbs.com.conf
- [root@serverb conf.d]# vim www.bbs.com.conf
- server {
- listen ;
- server_name www.bbs.com;
- root /usr/share/nginx/bbs.com;
- index index.php index.html index.htm;
- location ~ \.php$ {
- fastcgi_pass ;
- fastcgi_index index.php;
- fastcgi_param SCRIPT_FILENAME /usr/share/nginx/bbs.com$fastcgi_script_name;
- include fastcgi_params;
- }
- }
- [root@serverb conf.d]# mkdir /usr/share/nginx/bbs.com
- [root@serverb conf.d]# systemctl restart nginx.service
- [root@serverb conf.d]# vim /etc/sysconfig/spawn-fcgi
- OPTIONS="-u nginx -g nginx -p 9000 -C 32 -F 1 -P /var/run/spawn-fcgi.pid -- /usr/bin/php-cgi"
- [root@serverb conf.d]# systemctl start spawn-fcgi
- [root@serverb conf.d]# /sbin/chkconfig spawn-fcgi on
- [root@serverb conf.d]# systemctl enable mariadb.service
- [root@serverb conf.d]# systemctl start mariadb.service
- [root@serverb conf.d]# mysqladmin -u root password "uplooking"
- [root@serverb php]# cp Discuz_X3.2_SC_UTF8.zip /tmp/
- [root@serverb php]# cd /tmp/
- [root@serverb tmp]# unzip Discuz_X3.2_SC_UTF8.zip
- [root@serverb tmp]# cp -r upload/* /usr/share/nginx/bbs.com/
- [root@serverb tmp]# chown nginx /usr/share/nginx/bbs.com/ -R
- [root@workstation ~]# echo 172.25.15.10 www.bbs.com >> /etc/hosts
- }
- 项目迁移
- {
- 迁移优先级 #数据库>其他软件
- 迁移的流程{
- .程序的迁移
- .配置文件的迁移
- .数据文件的备份与迁移
- .地址的修改
- .权限的修改
- }
- }
- LNMP项目迁移
- {
- 迁移优先级 #数据库>php php-mysql spawn-fcgi
- 迁移的流程{
- .程序的迁移
- .配置文件的迁移
- .数据文件的备份与迁移
- .地址的修改
- .权限的修改
- }
- 数据库迁移
- php相关程序的迁移
- }
- 数据库迁移
- {
- 旧机器上的操作{
- >备份数据文件并拷贝至新机器
- >修改配置文件中的地址 (此处的配置文件不是数据库配置文件,而是使用数据库的程序的配置文件)
- }
- 新机器上的操作{
- >安装程序并启动服务
- >导入旧机器上的数据文件
- >修改程序的权限
- }
- }
- 项目迁移实验
- {
- .数据库迁移实验 #实验目的:随着网站用户的增多,数据量越来越大,数据库需要扩容,现在想将数据库单独放在一台服务器上来解决数据库容量不足的问题
- #实验要求:将数据库从serverb-->serverj
- .LNMP项目迁移实验 #实验目的:原本的LNMP服务所在的服务器老化了,现在公司新买了两台服务器,要将LNMP服务迁移到新服务器上;数据库单独放在一台服务器上;php相关程序放在一台服务器上
- #实验要求:数据库serverb-->serverj;php相关程序serverb-->serverc
- .LNMP项目迁移并配置第二个php服务实验
- #实验要求:原本的LNMP服务所在的服务器老化了,现在公司新买了三台服务器,要将LNMP服务迁移到新服务器上;数据库单独放在一台服务器上;还有两台,配置两个php服务
- }
- 具体实验请去实验论坛
- 数据库迁移详 实验
- {
- #实验目的:随着网站用户的增多,数据量越来越大,数据库需要扩容,现在想将数据库单独放在一台服务器上来解决数据库容量不足的问题
- #实验要求:将数据库从serverb-->serverj
- #实验步骤:
- ========================================================================
- serverb{
- #数据库备份
- mysqldump --all-databases -uroot -puplooking > /tmp/mariadb.all.sql <--将数据库文件备份并导出到/tmp/mariadb.all.sql文件中
- #复制到serveri中
- scp /tmp/mariadb.all.sql serveri:/tmp
- #地址的修改<==在/usr/share/nginx/bbs.com/目录中循环找到以.php结尾的文件,在文件中找到uplooking关键字的所在行,但是不输出(-q),而是输出该文件的文件名。此处uplooking是数据库的密码,请根据实际情况做修改。
- cd /usr/share/nginx/bbs.com;for i in $(find ./ -name "*.php");do grep -q "uplooking" $i && echo $i;done
- vim xxx.php
- #将找到的文件进行修改,将localhost改为数据库所在的服务器的ip地址
- #define('UC_DBHOST', 'localhost');
- }
- serverj{
- #安装mariadb-server 注意版本 安装相同版本的数据包
- yum install -y mariadb-server
- #开启服务,并设置开机服务自启
- systemctl enable mariadb;systemctl start mariadb
- #查看数据库文件是否复制成功
- ll /tmp/mariadb.all.sql
- #导入数据库文件
- mysql < /tmp/mariadb.all.sql
- #授权serverb的spawn-fcgi访问数据库
- #>授权ip地址
- echo "grant all on bbs.* to root@'192.168.0.11' identified by 'uplooking';" | mysql-u root -p uplooking
- #>授权主机名
- echo "grant all on bbs.* to root@'serverb.pod15.example.com' identified by 'uplooking';" | mysql -uuroot -puplooking
- #更新授权表 mysqladmin -uroot -puplooking flush-privileges
- }
- --------------------------------------------------------------------------
- #测试
- serverb{
- #关闭数据库服务
- systemctl stop mariadb
- }
- workstation{
- #通过浏览器登陆www.bbs.com
- firefox
- }
- #问题和答案
- #-u root 不能有空格;-p uplooking 不能有空格
- mysqldump --all-databases -uroot -puplooking > /tmp/mariadb.all.sql
- #find搜索*.php必须用双引号
- find ./ -name "*.php"
- #mysql登陆方式
- mysql -uroot -puplooking
- mysql -u root -p 回车
- 输入密码
- #*.*是指什么目录下的所有文件呢?
- echo "grant all on *.* to root@'192.168.0.11' identifide by 'uplooking';" | mysql -uroot -puplooking
- /var/lib/mysql
- }
- LNMP项目迁移实验
- {
- #实验目的:原本的LNMP服务所在的服务器老化了,现在公司新买了两台服务器,要将LNMP服务迁移到新服务器上;数据库单独放在一台服务器上;php相关程序放在一台服务器上
- #实验要求:数据库serverb-->serverj;php相关程序serverb-->serverc
- #实验步骤:
- ===============================================================
- #第一步——数据库迁移(serverb-->serverj)
- serverb{
- #数据库备份
- mysqldump --all-databases -uroot -puplooking > /tmp/mariadb.all.sql <--将数据库文件备份并导出到/tmp/mariadb.all.sql文件中
- #复制到serveri中
- scp /tmp/mariadb.all.sql serveri:/tmp
- #地址的修改<==在/usr/share/nginx/bbs.com/目录中循环找到以.php结尾的文件,在文件中找到uplooking关键字的所在行,但是不输出(-q),而是输出该文件的文件名。此处uplooking是数据库的密码,请根据实际情况做修改。
- cd /usr/share/nginx/bbs.com;for i in $(find ./ -name "*.php");do grep -q "uplooking" $i && echo $i;done
- #将找到的文件进行修改,修改server_name,为数据库所在的服务器的ip地址
- vim xxx.php
- }
- serverj{
- #安装mariadb-server 注意版本 安装相同版本的数据包
- yum install -y mariadb-server
- #开启服务,并设置开机服务自启
- systemctl enable mariadb;systemctl start mariadb
- #设置数据库密码
- mysqladmin -u root password 'uplooking'
- #查看数据库文件是否复制成功
- ll /tmp/mariadb.all.sql
- #导入数据库文件
- mysql < /tmp/mariadb.all.sql
- #授权serverb的spawn-fcgi访问数据库
- #>授权ip地址
- echo "grant all on *.* to root@'192.168.0.11' identified by 'uplooking';" | mysql -uroot -puplooking
- #>授权主机名
- echo "grant all on *.* to root@'serverb.pod15.example.com' identified by 'uplooking';" | mysql -uroot -puplooking
- #更新授权表 mysqladmin -uroot -puplooking flush-privileges
- }
- }
- ---------------------------------------------------------------------------
- #第二步——php相关程序的迁移 (serverb-->serverc)
- serverb{
- #操作数据(偷懒的做法,直接将文件复制过去即可)
- scp /etc/sysconfig/spawn-fcgi serverc:/etc/sysconfig/spawn-fcgi
- #将serverb中的php相关文件转移到 serverc中 (需要相同的目录,最好用tar命令打包复制到serverc中)
- tar -cjf bbs.tar.bz2 /usr/share/nginx/bbs.com; scp bbs.tar.bz2 serverc:/usr/share/nginx/bbs.com
- #地址修改
- serverb 中的/etc/nginx/conf.d 目录下配置文件中关于php的配置的php指向改为 serverc的地址
- location ~ \.php$ {
- fastcgi_pass ;(改为servec的地址)
- fastcgi_index index.php;
- fastcgi_param SCRIPT_FILENAME /usr/share/nginx/yeliangcheng.com$fastcgi_script_name;
- include fastcgi_params;
- }
- }
- serverc{
- #迁移程序--安装相同的软件包
- php php-mysql /mnt/item/nginx/epel/spawn-fcgi--.el7.x86_64.rpm
- #启动服务并设置开机自启
- systemctl start spawn-fcgi; /sbin/chkconfig spawn-fcgi on
- #php相关文件
- tar -jxf /usr/share/nginx/bbs.com/bbs.tar.bz2
- }
- ===================================================================================
- #测试
- serverb{
- #关闭数据库服务
- systemctl stop mariadb
- #关闭spawn-fcgi服务
- systemctl stop spawn-fcgi
- /sbin/chkconfig spawn-fcgi off
- }
- workstation{
- #通过浏览器登陆www.bbs.com
- firefox
- }
- #问题和解决
- }
零基础学习云计算及大数据DBA集群架构师【企业级运维技术及实践项目2015年1月29日周五】的更多相关文章
- 零基础学习云计算及大数据DBA集群架构师【Linux系统环境及权限管理12.21-12.25】
从这周开始Linux的学习,老师是一位女老师,这到给了更多的信心,老师讲得很快,如果说只谈记命令的话是不多,但是要真正去理解,其实内容还是挺多的,我都是以老师讲的内容为主线,然后自己再看鸟哥的书做加深 ...
- 零基础学习云计算及大数据DBA集群架构师【Linux系统配置及网络配置2015年12月30日周三】
/Mon *************摘要************** 计划任务 )一次性计划任务 服务:atd 命令:at 服务存放文件:/etc/init.d/atd 系统配置文件:/etc/at. ...
- 零基础学习云计算及大数据DBA集群架构师【Linux Bash Shell编程及系统自动化2015年1月21日周四】
lvy老师教项目课程,以及代课了shell部分课程,大家都觉得这位老师不行,上课时做的操作很多都是错误的,觉得她基础不好.而且,她不能解释原因,学生问为什么,她不知道.崩溃啊.向xx培训机构反应后,说 ...
- 零基础学习云计算及大数据DBA集群架构师【预科2015年12月14日周一】
1.第一天比较轻松,上午填表格,录指纹,拍照片,做自我介绍. 2.下午老师简单介绍了一下PC\交换机\路由器\塔式服务器\机架式服务器(1U\2U)\刀片服务器\磁带机 3.班主任陈老师朱老师,预科秦 ...
- 零基础学习云计算及大数据DBA集群架构师【Linux系统\网络服务及安全配置2015年1月8日周五】
考试考一天,得分94,最后一题防火墙当时还没搞明白 考题如下: 注意事项: .确保在重启主机后所有配置仍然生效. .selinux 必须为Enforing 模式,防火墙必须开始.默认策略必须清空. . ...
- 大数据Hadoop-Spark集群部署知识总结(一)
大数据Hadoop-Spark集群部署知识总结 一.启动/关闭 hadoop myhadoop.sh start/stop 分步启动: 第一步:在hadoop102主机上 sbin/start-dfs ...
- 入门大数据---Redis集群分布式学习
Redis是什么? 官方介绍: Redis 是一个开源(BSD许可)的,内存中的数据结构存储系统,它可以用作数据库.缓存和消息中间件. 它支持多种类型的数据结构,如 字符串(strings), 散列( ...
- 一台虚拟机,基于docker搭建大数据HDP集群
前言 好多人问我,这种基于大数据平台的xxxx的毕业设计要怎么做.这个可以参考之前写得关于我大数据毕业设计的文章.这篇文章是将对之前的毕设进行优化. 个人觉得可以分为两个部分.第一个部分就是基础的平台 ...
- 大数据——Hadoop集群坏境CentOS安装
前言 前面我们主要分析了搭建Hadoop集群所需要准备的内容和一些提前规划好的项,本篇我们主要来分析如何安装CentOS操作系统,以及一些基础的设置,闲言少叙,我们进入本篇的正题. 技术准备 VMwa ...
随机推荐
- linux下shapely的安装
错误 1.“from shapely.geometry import Point, LineString, Polygon”时报错: OSError: Could not find library g ...
- string.Format 日期格式化
String.Format日期的格式化例子: DateTime dt = DateTime.Now;//2010年10月4日 17点05分 string str = ""; //s ...
- hadoop hdfs 命令行 设置文件夹大小的上限 quota:配额
>bin/hdfs dfs -put readme.txt /finance >bin/hdfs dfs -du -s /finance > /finance >bin/hdf ...
- Node.js全局对象
Node.js的全局对象是具有全局性的,它们可在所有的模块中应用.我们并不需要包括这些对象在应用中,而可以直接使用它们.这些对象的模块,函数,字符串和对象本身,如下所述. __filename __f ...
- 巧用powerpoint制作符合期刊要求的复合图
- java 反射 动态代理
在上一篇文章中介绍Java注解的时候,多次提到了Java的反射API.与javax.lang.model不同的是,通过反射API可以获取程序在运行时刻的内部结构.反射API中提供的动态代理也是非常强大 ...
- Little Kings
sgu223:http://acm.sgu.ru/problem.php?contest=0&problem=223 题意:n*n的格子放k个国王,一共有多少种放发. 题解:简单的状压DP. ...
- 【HDOJ】3442 Three Kingdoms
bfs+状态压缩.初始化数组的曼哈顿距离条件写错了,改了一下午. /* 3442 */ #include <iostream> #include <cstdio> #inclu ...
- COJ 0601&0602 动态规划(二)及加强
未加强传送门0601:http://oj.cnuschool.org.cn/oj/home/addSolution.htm?problemID=571 加强传送门0602:http://oj.cnus ...
- 【模拟】Codeforces 710A King Moves
题目链接: http://codeforces.com/problemset/problem/710/A 题目大意: 国际象棋标准8X8棋盘,国王能往周围8个方向走.输入国王的位置,输出当前国王能往几 ...