PHP 运行环境(Apache)
1.在镜像环境中,/root/sh-1.5.5-centos.zip 中有安装镜像环境的脚本,您可以在 CentOS 系统中自行采用此脚本安装,安装后的环境跟镜像里初始化的环境一致(此镜像环境下无需执行此脚本安装),安装过程可参考以下命令:
unzip /root/sh-1.5.5-centos.zip
chmod -R 777 sh-1.5.5-centos
cd /root/sh-1.5.5-centos
./install.sh
2.在镜像环境中,/root/sh-1.5.5-centos 是安装环境的主目录,镜像中的环境是在此目录下编译安装的。
首次进入该软件环境,可以执行 /alidata/init 目录下的优化脚本 optimization.sh。
此脚本可根据 ECS 配置优化 mysql、php 的相应参数。
注:此脚本执行后会初始化配置文件,如您已自行修改过配置文件,请谨慎操作。
具体操作可参考如下命令:
cd /alidata/init #进入init目录
./optimization.sh #执行优化脚本
默认的 mysql 的用户名/密码以及使用初始化脚本修改后的密码保存在 /alidata/account.log 文件中。
可用以下命令查看:
cat /alidata/account.log
** 关于如何修改 mysql 的密码,可以参考如下两种方式:**
1.一键修改 root 用户密码(此脚本仅支持修改 root 用户密码,如需修改 mysql 数据库的其他用户密码,请参考“2.命令行修改 mysql 密码”):
cd /alidata/init
./reset_db.sh
2.命令行修改 mysql 用户密码:
mysqladmin –u用户名 -p老密码 password 新密码
老密码即mysql用户当前的密码,新密码即您修改后的密码。 -p跟老密码之间没有空格。老密码跟“password”之间有空格,password跟新密码之间有空格。
很多用户反馈,用镜像生成系统后,云主机本地能够连接 mysql ,为何远程连接不上 mysql 呢?这是因为默认安装的 mysql ,出于安全考虑,只允许本地连接。如果您要开启 root 用户远程连接的权限,可执行以下操作: 命令:
cd /alidata/init #进入init目录
./remote_connection.sh #执行脚本
出现以上提示表示开启成功! 如果您想关闭 root 用户的远程连接,恢复 mysql 的默认设置( root 用户只允许本地连接),您可以执行以下操作:
mysql -uroot -pxxx(mysql的root用户密码) #登陆数据库
use mysql #打开mysql数据库
delete from user where host='%' ; #将远程连接关闭
flush privileges; #刷新权限表,使配置生效
exit; #退出数据库
备注:您也可以为 mysql 连接添加新的用户名,如添加用户名 test ,密码为123456,权限为%(表示任意ip都能连接)的远程连接用户。 命令参考如下:
mysql -uroot -pxxx(mysql的root用户密码)
use mysql
grant all on *.* to 'test'@'%' identified by '123456';
flush privileges;
exit;
1.新建 vsftp 用户
2.删除 vsftp 用户
3.修改 ftp 用户主目录
4.修改 vsftp 密码
软件的主目录:/alidata web主目录:/alidata/www ftp主目录:/alidata/www apache主目录:/alidata/server/httpd apache配置文件主目录:/alidata/server/httpd/conf php主目录:/alidata/server/php php配置文件主目录:/alidata/server/php/etc mysql主目录:/alidata/server/mysql mysql配置文件:/etc/my.cnf 日志目录: /alidata/log/httpd 为apache存放日志主目录 /alidata/log/php 为php存放日志主目录 /alidata/log/mysql 为mysql存放日志主目录 init目录: /alidata/init 为本镜像环境中脚本存放路径。
apache:
/etc/init.d/httpd start #启动
/etc/init.d/httpd stop #停止
/etc/init.d/httpd restart #重启
mysql:
/etc/init.d/mysqld start #启动
/etc/init.d/mysqld stop #停止
/etc/init.d/mysqld restart #重启
ftp:
/etc/init.d/vsftp start #启动
/etc/init.d/vsftp stop #停止
/etc/init.d/vsftp restart #重启
命令行查看当前使用的php版本:
php -v
关于卸载 如何卸载镜像环境中安装的软件,可以参考如下命令完成卸载:
cd /root/sh-1.5.5-centos
./uninstall.sh
执行以上卸载,会清理镜像环境的/alidata目录,请卸载前自行备份好相应数据。
教程一:部署网站
1.在使用镜像安装系统后, 在 /alidata/init 目录下,我们可以看到部署站点的脚本 vhost.sh。 部署网站分两种情况:域名站点和无域名站点(无域名一般是用户未购买域名或者域名未备案)。
无域名站点部署: 命令:
cd /alidata/init
./vhosts.sh
注: 网站目录必须设置在 /alidata/www 目录下,设置为其他路径则需要自行修改 httpd.conf 文件中的网站目录。 如果在上图第3步使用的是80端口,则需输入以下命令,如果输入为其他端口号则跳过此步骤
cd /alidata/vhosts/
mv default.conf default.conf.bak
最后将网站文件(不带目录)通过 ftp 上传至 /alidata/www/网站文件夹( vhost 创建时指定的网站目录文件夹)后,访问 http://IP 或 http://IP:端口号 则能够访问到自己的站点。
域名站点部署:
命令:
cd /alidata/init
./vhost.sh
最后将网站文件(不带目录)通过 ftp 上传至 /alidata/www/网站文件夹( vhost 创建时指定的网站目录文件夹)后,访问 http://域名 或 http://域名:端口号 则能够访问到自己的站点。
教程二:将网站迁移至数据盘
用镜像生成系统后,网站的数据目录都默认在系统盘的 /alidata/www 目录下。如果您的应用数据量较大,系统盘默认的 40G 大小可能不够用,就需要我们将网站迁移至数据盘中:
方法1【脚本一键迁移】:
注:此方法会将用户数据迁移至第一块数据盘,且会清空数据盘中所有数据,适合数据盘为新购买未存放任何数据的情况;如此数据盘存放有重要数据,切勿使用此方式。有存放数据或使用高效云盘 /SSD 云盘的用户,请参考“方法二”。
若用户在数据盘有数据的情况下,执行此脚本而导致数据丢失,责任需自行承担,请务必做好数据备份,谨慎操作。
命令:
cd /alidata/init #进入到脚本存放目录
./migration.sh #执行迁移脚本
提示图片上内容表示迁移成功,迁移完后网站路径在 /data1/www 下
方法2【手动迁移】:
1.首先分区并格式化数据盘。如果数据盘已格式化完成,请跳过此步骤。
2.以镜像中默认站点的 default 目录下的网站文件(默认站点仅有 index.php 一个首页文件)迁移为例,站点迁移操作步骤如下:
/etc/init.d/httpd stop #首先停止nginx服务
cd / #进入根目录下
mount /dev/xvdb1 /mnt/ #将第一块数据盘挂载至mnt目录下,也可以根据您自己的需要,挂载至其他目录下。
mkdir -p /mnt/www /mnt/log
cp -a /alidata/www/default/ mnt/www/ #将数据迁移至数据盘中
3、修改 default 对应的虚拟主机配置文件。
vim /alidata/vhosts/default.conf
将“DocumentRoot /alidata/www/default”更改为“DocumentRoot /mnt/www/default”
将然后将:ErrorLog "/alidata/log/httpd/default-error.log"
CustomLog "/alidata/log/httpd/default.log" common
更改为:ErrorLog "/mnt/log/default-error.log"
CustomLog "/mnt/log/default.log" common
4、启动 apache 完成迁移:
/etc/init.d/httpd start
教程三:将 mysql 迁移至数据盘中
镜像部署的 mysql 的安装目录及数据目录都存放在系统盘中,同样考虑到系统盘空间可能不够用的情况,如果 mysql 数据量很大,这里就需要我们将 mysql 迁移至数据盘中。
mysql 迁移至数据盘中,一般指将 mysql 的数据目录迁移至数据盘中。具体操作步骤如下:
1.首先格式化磁盘,并将数据盘挂载在 mnt 目录下(根据您自己的需求,也可以挂载在其他目录下)
mkdir -p /mnt/data
2.用 mysqldump 命令导出 mysql 数据,命令参考如下:
mysqldump -p --all-databases > all.sql
3.停止 mysql :
/etc/init.d/mysqld stop
4.修改 mysql 服务的状态控制脚本 /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 指定的迁移目录,即 mysql 迁移后的数据目录。
6.启动 mysql,然后将数据还原至新的数据盘中,操作步骤如下:
/etc/init.d/mysqld start
mysql < all.sql
/etc/init.d/mysqld restart
如果您的mysql数据库开启了远程连接,若执行mysql < all.sql命令报错,您可使用以下命令操作:
mysql -uroot -p密码 -h 公网IP < all.sql;
/etc/init.d/mysqld restart