摘录于阿里云Linux安装环境,原文链接https://docs.cloudcare.cn/pages/viewpage.action?pageId=65865
一、安装须知
1、此安装包可在阿里云所有 linux 系统上部署安装,此安装包包含的软件及版本为:
nginx: 1.4.4 apache:2.2.29、2.4.10 mysql:5.1.73、5.5.40、5.6.21 php:5.3.29、5.4.23、5.5.7 php 扩展:memcache、Zend Engine/ OPcache jdk : 1.7.0 tomcat : 7.0.54 ftp:(yum/apt-get 安装) phpwind:8.7 GBK phpmyadmin:4.1.8
2、请使用最新的一键安装包脚本安装,以前老版本都存在 bug ,会导致安装异常以及安装的环境混乱。
3、执行一键安装包 (./install.sh),会自动清理之前一键安装包安装过的环境。 如果您已经安装过一键安装包,再次执行安装,如若有重要数据,请自行备份 /alidata 目录。
4、一键安装包会将软件安装在 /alidata 目录下。
如果您的系统不存在数据盘,则一键安装包会将软件安装到系统 /alidata 目录下。
如果您的系统存在数据盘,且还没有格式化挂载数据盘。则一键安装包会自动帮您格式化第一块数据盘,并挂载在 /alidata 目录下。
如果您的系统存在数据盘,且已格式化并挂载了第一块数据盘。一键安装包会将第一块数据盘再次挂载到 /alidata 目录下,并不影响您之前的挂载目录的使用。比如下图所示,安装前,已经挂载了 mnt 目录。安装后,一键安装包再次挂载 /alidata 目录。
如果您的系统存在数据盘,且已格式化数据盘,但没有挂载数据盘。一键安装包会将第一块数据盘挂载到 /alidata 目录下。
5、怎么样卸载一键安装包?
可以执行以下命令完成卸载:
chmod 777 -R sh-1.5.0/ cd sh-1.5.0/ ./uninstall.sh
6、如果您需要 tomcat 环境,请在第一步选择 nginx 服务。
好了,下面来进行我们详细的安装步骤。
二、安装准备 xshell 和 xftp
首先准备好连接 linux 服务器的工具,推荐用 xshell 和 xftp ,2个软件您可以从网上下载安装。
xshell 是一个强大的安全终端模拟软件,它支持 SSH1, SSH2, 以及 Microsoft Windows 平台的 TELNET 协议。
Xftp 是一个基于 MS windows 平台的功能强大的 SFTP、FTP 文件传输软件。
根据上面提供的下载地址,首先安装 xshell(基本上是点击 Next 直至安装 完成):
点击 Next–>此时选择 “free for Home/School” (免费版)。
再点击 Next–> Next –> Next –>install 即可安装(还可以选择 xshell 安装后的语言环境,熟悉英文的朋友,可以选择 English 选项)。
点击 finish 完成 xshell 的安装。
然后我们可以看到以下界面。
接下来安装 xftp(用于上传文件到 linux 服务器的小工具),安装 xftp 也是非常的简单,基本上也点击 Next 直至安装完成。
点击 Next –> 此时选择 “free for Home/School”,(免费版)。
录点击 Next –> Next –> Next –> install (还可以选择 xshell 安装后的语言环境,熟悉英文的朋友,可以选择 English 选项)。
点击 finish 完成安装。
然后我们可以看到以下界:
然后我们打开 xshell, 设置云服务器登录信息:
设置服务器帐号密码。 设置字符集编码(如果不设置字符集编码,则中文字符将会在 xshell 中显示为乱码)。
设置好了就点击 ok 保存。
三、安装步骤
一切准备就绪,让我们连接看看云 linux 服务器的庐山真面目吧!
黑不隆冬的,啥都没有,这就是 linux 的 shell 啦。shell(壳)到底是什么东东呢?
Shell是系统的用户界面,提供了用户与内核进行交互操作的一种接口。它接收用户输入的命令并把它送入内核去执行。
linux 作为服务器专用操作系统,主要就是默默的待在机房提供各项网络服务的,为了节省系统资源,像 windows 那样华丽丽的用户桌面就默认不加载了。
当然现在越来越多的用户使用 linux 作为日常家庭办公用操作系统,所以就有了像 gnome、kde 这样超华丽的桌面。
不过作为服务器使用还是推荐用命令行界面吧,毕竟省一点资源,网站打开可能会更快一点嘛!
用 xftp 上传环境安装文件。
回到 shell 界面,用ll命令看下情况(ll 是 LL 的小写)。
输入命令:ll
是不是多了一个 sh-1.5.0 目录,1.5.0 是我们的一键安装包的版本号。 请下载最新的版本安装,版本更新介绍,我们可以在 change.log 中查看。也希望大家多多反馈对于一键安装包的意见。
接下来按照说明,分步骤敲入安装命令(以下为 centos 系统下安装示例)。
输入命令:
chmod –R 777 sh-1.5.0 cd sh-1.5.0 ./install.sh
出现了一个选择提示,进入 web 服务器的选择界面。
这里您可以根据需要选择 apache 或者 nginx 服务器,这里是 2 个服务器的介绍:
注意:要使用 Java 环境(安装 tomcat + JDK)必须选择 nginx 服务器,Java 环境是 1.5 专业版一键安装包新添加内容,之前的版本是没有的。
引用:
在高并发连接的情况下,Nginx 是 Apache 服务器不错的替代品。
Nginx 同时也可以作为 7 层负载均衡服务器来使用。
根据我的测试结果,Nginx 0.8.46 + PHP 5.2.14 (FastCGI) 可以承受3万以上的并发连接数,相当于同等环境下 Apache 的 10 倍。
这里我们选择 nginx,输入 1, 回车(如果什么都不输入,直接回车,或者输入错误的字符,则默认选择 nginx),
然后我们再选择要安装的 nginx 的版本(如果 web 服务器选择的是 apache,这里提示信息则是要安装 apache 的版本),
有 nginx1.4.4 版本可以提供我们选择,这里我们选择 1.4.4 版本,则输入 1 ,回车(如果什么都不输入,直接回车,或者输入错误的字符,则默认选择 1.4.4 版本)。
接着我们再选择要安装 php 或者 tomcat,如果选择 php,则输入 1 ,回车;
如果需要 Java 环境,安装 tomcat,则输入 2,回车;
(如果什么都不输入,直接回车,或者输入错误的字符,则默认选择php)
注意:Java 环境是 1.5 专业版一键安装包新添加内容,之前的版本是没有的。
然后我们再选择要安装的 mysql 的版本(如果之前选择 tomcat,会直接到这一步),
总共有 5.1.73⁄5.5.35⁄5.6.15 三个版本可以提供我们选择,这里我们选择 5.1.73 版本,则输入 1,回车(如果什么都不输入,直接回车,或者输入错误的字符,则默认选择 5.1.73 版本)。
然后可以看到我们刚才选择的版本如下,我们输入 y 或者 Y ,回车,进行安装。
到这里,我们就正式进入环境安装环节了。你可以泡杯茶休息下。一般这个过程会持续半个小时的样子。
注意:
1、请在网络通畅的情况下进行安装,不要强行终止安装过程(强行关闭安装窗口或者 ctrl + c 强行终止安装进程),则会导致安装失败,以及出现不可预知的安装异常!
2、安装前,最好能跟系统盘打上快照,如果异常,方便回滚系统。
为了防止断掉和服务器的连接,可以新开一个 shell 窗口,将鼠标挪到窗口标签栏,右击,如下图所示:
可以看到,新开了一个窗口:
出现上图,则说明一键安装包安装完毕。
四、安装完成进行 check
到这个界面说明安装已经结束了,我们可以输入以下命令再次验证是不是已经安装成功:
输入命令 :netstat -tunpl
我们可以看到正在运行状态的服务及端口:9000 端口是 php 进程服务,3306 端口是 mysql 服务,80端口是 httpd 或者 nginx 服务,21 端口是 ftp 服务。
如果看到以上信息,则说明安装没有异常。
这里有一点需要注意的是,如果您选择安装的是 apache,则没有上面的 9000 端口。
为什么选择安装的是 apache,就没有 9000 端口的 php 进程服务呢?
这是因为 nginx + php 集成方式与 apache + php 集成方式不同,感兴趣的朋友可以自己入研究一下,这里就不再介绍。
大家有疑问了。那我怎么登录 ftp 和 mysql 呢?
在命令行里输入: cat account.log
看到了没
ftp 的用户名是:www
mysql 的用户名是:root
密码就在屏幕上了!
修改 ftp 的密码:
用 root 用户登录系统,然后执行下面命令:
然后输入您的 ftp 新密码。
修改 mysql 的密码:
注意:-p和旧密码之间没有空格,password和新密码之间有空格。
另外我们也可以 cat /alidata/website-info.log 中查看到刚才安装软件的版本信息。
好了。所有配置都已经完成了。是不是很简单!
五、安装 phpwind 和 phpmyadmin
接下来我们可以访问一下一键安装包默认安装的phpwind论坛以及phpmyadmin。(选择安装tomcat,是不安装 phpwind 和 phpmyadmin )
直接在浏览器中输入您的域名或者 ip,如果是第一次访问 phpwind,则会自动跳转到安装页面。
如果访问的时候卡主,不出来页面,则检查一下防火墙,并自行设置或者关闭防火墙。
点击“接受”进行安装。
然后选择数据库类型为 mysql ,数据库用户名和数据库密码填写 account.log 中的用户名和密码。然后根据自己的要求,设置好数据库名、管理员账号和密码等。
填写好信息后,点击下一步完成安装。
接下来我们访问 phpmyadmin,在浏览器中键入我们的域名或者 ip + phpmyadmin 路径,即可访问我们安装的 phpmyadmin。如 http://127.0.0.1/phpmyadmin。
输入 mysql 用户名以及密码,即可登录。
最后我们就可以在这里面操作管理我们的 mysql 啦。很简单方便吧。
六、环境目录及相关操作命令
网站目录:/alidata/www
服务器软件目录:/alidata/server
Mysql 目录 /alidata/server/mysql
Php 目录 /alidata/server/php
Tomcat 目录 /alidata/server/tomcat7
选择了 nginx 那么会有一个 nginx 目录在 /alidata/server/nginx/
Nginx 配置文件在 /alidata/server/nginx/conf
Nginx 虚拟主机添加 你可以修改 /alidata/server/nginx/conf/vhosts/phpwind.conf 选择了 apache 那么会有一个 httpd 目录在 /alidata/server/httpd
apache 配置文件在 /alidata/server/httpd/conf
apache 虚拟主机添加 你可以修改 /alidata/server/httpd/conf/vhosts/phpwind.conf
各个服务操作命令汇总:
nginx:
/etc/init.d/nginx start/stop/restart/reload)
apache:
/etc/init.d/httpd start/stop/restart/...
mysql:
/etc/init.d/mysqld start/stop/restart/...
php-fpm:
/etc/init.d/php-fpm start/stop/restart/...
Tomcat:
/etc/init.d/tomcat7 start/stop/restart/…
ftp:
/etc/init.d/vsftpd start/stop/restart/...
比如启动 nginx:
/etc/init.d/nginx start
网站部署
Apache + php 环境:
首先,通过 xftp 或者 FTP 软件把您的站点目录 xxx 上传到 /alidata/www/目录下,并修改目录所属组。
命令 chown .www /alidata/www/xxx -R
www 目录下默认会有 phpwind 站点目录,如果,您不需要此论坛,可以删除。
注意:删除前,需要把 phpmyadmin 目录移到您的站点目录下,否则 phpmyadmin 无法使用。
命令: mv /alidata/www/phpwind/phpmyadmin /alidata/www/xxx
然后,修改 Apache 的配置文件,默认情况只有一个 phpwind.conf。
复制 phpwind.conf 为 xxx.conf,修改文件 xxx.conf
按 ESC 键,输入冒号,输入 wq 回车键,保存配置文件。
最后,重启 Apache 服务,在浏览器输入域名或者 IP 即可
Nginx + php 环境:
首先,通过 xftp 或者 FTP 软件把您的站点目录 xxx 上传到 /alidata/www/目录下,并修改目录所属组。
命令 chown .www /alidata/www/xxx -R
www 目录下默认会有phpwind站点目录,如果,您不需要此论坛,可以删除。
注意:删除前,需要把 phpmyadmin 目录移到您的站点目录下,否则 phpmyadmin 无法使用。
命令: mv /alidata/www/phpwind/phpmyadmin /alidata/www/xxx
然后,修改 nginx 的配置文件
复制 phpwind.conf 为 xxx.conf,修改文件 xxx.conf
按 ES C键,输入冒号,输入 wq 回车键,保存配置文件。
最后,重启 Nginx 服务,在浏览器输入域名或者 IP 即可。
Nginx + tomcat 环境:(其环境下,没有安装 phpwind 和 phpmyadmin )
首先,通过 xftp 或者 FTP 软件把您的项目 xxx 上传到 /alidata/www/default 目录下,并修改目录所属组。
命令 chown .www /alidata/www/default/xxx -R
其中,default 属于 /alidata/server/tomcat7/webapps/ROOT 目录的软连接
复制配置模板文件,并修改
按 ESC 键,输入冒号,输入 wq 回车键,保存配置文件。
最后,重启 Nginx 服务,在浏览器输入域名或者 IP 即可。
数据导入或恢复
如果你站点属于迁移到云服务器上,需要进行数据导入或者数据恢复。
首先确认,你的环境中是否安装phpmyadmin(一款管理数据库的工具软件),
如果,您选择的是 tomcat 环境,默认是不安装 phpmyadmin 的,这样,
导入数据就需要你在服务器端登陆数据库,命令导入。
安装 phpmyadmin 的情况:
首先,你需要有之前站点的数据库备份文件 .sql 或 .zip 文件
其次,浏览器登陆你的 phpmyadmin ,登陆地址 http:// 服务器 ip/phpmyadmin
输入 root 用户名,密码登陆 phpmyadmin,进行数据库管理。
先点击上面导航栏数据库,创建数据库 xxx(与原来站点数据库名称一致)
接着,在左侧导航栏选择新建的数据库 xxx,再点击上面导航栏 “导入”
选择之前备份的数据库文件,确定字符码(utf-8或者gbk),点击 “执行”
最后,需要你到站点目录修改相应的文件(用于站点连接数据库的文件),
比如 config.php,把用户和密码替换成新数据库用户(root)和密码 (或者,修改数据库密码,与原来密码一致,并确保原来站点连接数据库使用的 root 用户,否则,还需要创建用户,并授权)
以上,数据导入没有报错,就可以浏览你的站点了!
没有 phpmyadmin 的情况:
首先,你需要有之前站点的数据库备份文件 .sql 或 .zip 文件,并把文件上传到服务器任意目录。
登陆数据库,-p 之后替换成你的数据库密码
创建 xxx 数据库,并查看
导入数据
查看导入数据表
看到此图,说明你的数据已经导入成功。
最后,需要你到站点目录修改相应的文件(用于站点连接数据库的文件),
比如 config.php,把用户和密码替换成新数据库用户(root)和密码 (或者,修改数据库密码,与原来密码一致,并确保原来站点连接数据库使用的 root 用户,否则,还需要创建用户,并授权)
以上,数据导入没有报错,就可以浏览你的站点了!
数据库修改密码,创建用户并授权操作
修改数据库密码:
方法一:登陆 phpmyadmin,直接点击“修改密码”即可
方法二:登陆数据库,-p 之后替换成你的数据库密码
输入修改密码 SQL 语句
>use mysql; >select user,host,password from user; 查看权限表,对应权限表进行更改 >update user set password=password("123456") where user="root" and host="localhost"; >flush privileges; >exit 退出
重启 mysql 服务 service mysqld restart
创建用户并授权:
方法一:对某一数据库 xxx 创建用户并授权,左侧导航栏点击 xxx 数据库,点击“权限”再点击“添加用户”
输入用户名,密码,注意“全选”,点击“执行”,就可以完成用户的创建与授权。
方法二:登陆数据库,-p 之后替换成你的数据库密码
mysql> CREATE USER xxx IDENTIFIED BY '***'; 创建用户 mysql> GRANT ALL PRIVILEGES ON DBNAME.* TO 'xxx'@'%' IDENTIFIED BY 'PASSWORD'; 分配权限 mysql> FLUSH PRIVILEGES;刷新授权表 mysql>exit 退出
将网站迁移到数据盘
网站的数据目录都默认在系统盘的 /alidata/www 目录下。如果您的应用数据量较大,系统盘默认的 20 G 大小可能不够用。这需要我们将网站迁移至数据盘中。
1、首先分区并格式化我们的数据盘。如果已经格式化数据盘,此步可以不用做。
2、以 Apache 服务为例,我们执行以下命令迁移 phpwind 至数据盘中:
/etc/init.d/httpd stop #首先停止 apache 服务 cd / #进入根目录下 mount /dev/xvdb1 /mnt/
将第一块数据盘挂载至 mnt 目录下,也可以根据您自己的需要,挂载至其他数据盘中。
这里也可以尝试:
mount /dev/xvdb1 /alidata/www 直接把 /alidata/www 目录挂载在数据盘中,似乎更加方便。 mkdir -p /mnt/www /mnt/log cp -a /alidata/www/phpwind /mnt/www/ #将数据迁移至数据盘中 3、vim /alidata/server/httpd/conf/vhosts/phpwind.conf将: DocumentRoot /alidata/www/phpwind 更改为: DocumentRoot /mnt/www/phpwind 然后将:ErrorLog "/alidata/log/httpd/phpwind-error.log" CustomLog "/alidata/log/httpd/phpwind.log" common 更改为:ErrorLog "/mnt/log/phpwind-error.log" CustomLog "/mnt/log/phpwind.log" common
4、启动 apache 完成迁移:
/etc/init.d/httpd start
将 mysql 迁移到数据盘
mysql 的安装目录及数据目录都存放在系统盘中,同样考虑到系统盘空间不够用的情况,上面如果我们部署的 mysql 数据量很大,这里就需要我们将我们的 mysql 迁移至数据盘中。
mysql 迁移至数据盘中,一般指将 mysql 的数据目录迁移至数据盘中。具体操作步骤可以参考如下:
1、首先格式化磁盘,并将数据盘挂载在 mnt 目录下(根据您自己的需求,也可以挂载在其他目录下)
mkdir -p /mnt/data
2、用 mysqldump 命令导出您项目所有的数据,命令参考如下:
mysqldump -p --all-databases > all.sql
3、停止 mysql :
/etc/init.d/mysqld stop
4、 vim /etc/init.d/mysqld 将文件中 “datadir=/alidata/server/mysql/data” 中的目录地址更改为您迁移至数据盘中的目录地址,即 “datadir=/mnt/data”。
5、然后用以下命令初始化一个全新的数据库环境:
/alidata/server/mysql/scripts/mysql_install_db --basedir=/alidata/server/mysql --datadir=/mnt/data --user=mysql 值得注意的是 datadir 为您 mysql 的数据目录。
6、启动 mysql,然后将数据还原至新的数据盘中:
/etc/init.d/mysqld start mysql < all.sql /etc/init.d/mysqld restart
如何配置 mysql 远程连接
很多用户反馈,用镜像生成系统后,云主机本地能够连接 mysql,为何远程连接不上 mysql 呢?
这是因为默认安装的 mysql,出于安全考虑,只能本地连接。
如果您需要远程连接,这里就需要设置一下 mysql 的权限表。具体设置的步骤如下:
1、在您的云主机上连接进入 mysql。
2、执行以下 mysql 命令:
use mysql #打开 mysql 数据库
将 host 设置为 % 表示任何 ip 都能连接 mysql,当然您也可以将 host 指定为某个 ip
update user set host='%' where user='root' and host='localhost'; flush privileges; #刷新权限表,使配置生效 然后我们就能远程连接我们的 mysql 了。
3、如果您想关闭远程连接,恢复 mysql 的默认设置(只能本地连接),您可以通过以下步骤操作:
use mysql #打开 mysql 数据库 update user set host='localhost' where user='root'; #将 host 设置为 localhost 表示只能本地连接 mysql flush privileges; #刷新权限表,使配置生效
备注:您也可以添加一个用户名为 yuancheng ,密码为 123456,权限为 %(表示任意 ip 都能连接)的远程连接用户。
命令参考如下:
grant all on *.* to 'yuancheng'@'%' identified by '123456'; flush privileges;
2018年11.2由阿沐转载于阿里云Linux建站,共享学习,附件sh-1.5.5
评论
飞天驹少
回复感谢博主分享
飞天驹少
回复@飞天驹少 博主666