vm虚拟机上安装apache+php+ftp+mysql

我在vm虚拟机上想安装 winxp和linux,然后在linux机上装apache+php+ftp+mysql,以下为我的按装过程:

 1:连通虚拟机:两个虚拟机都选Host-Onl,查看主机VirtualBox Host-Only Network ip地址为192.168.56.1,那我让linux,windowsxp都让为该网址192.168.56.2,192.168.56.3,

然后按以下方法就可以让两虚拟机互ping通,仅是如上的设置,可能还不能保证就可以实现WINDOWS与LINUX的ping互通问题。这其中就涉及到双方的防火墙问题了。

1、WINDOS侧存在防火墙。如果你发现WINDOWS可以ping通LINUX,而LINUX不能ping通WINDOWS,则应该是你WINDOWS本机上防火墙策略导致的问题。我本次也是被这个问题折磨了好长一段时间,直到关闭了WINDOSW本机的防火墙,终于就实现ping互通了。关闭本机WINDOWS防火墙的关闭方法如下:

开始 -> 控制面板 -> 系统和安全 -> Windows防火墙 -> 打开或关闭Windows防火墙 -> 关闭Windows防火墙

2、LINUX侧存在防火墙。此时可能出现LINUX能ping通WINDOWS,但是windows却不能ping通LINUX。

检查LINUX是否有防火墙的方法是:

iptables -L 命令查看当前LINUX系统的策略。

我这里不需要各种防火墙策略,因此直接简单设置防火墙规则如下:

iptables -F   //清空当前防火墙规则

iptables -X   //删除系统配置的所有防火墙规则

iptables -P INPUT ACCEPT

iptables -P OUTPUT ACCEPT

iptables -P FORWARD ACCEPT

只要配置成开机自动执行上述命令,则启动后LINUX系统当前的防火墙策略就如下:

这样,就解除了LINUX的防火墙设置。

现在,就可以实现WINDOWS <-> LINUX系统之间的IP互通了。在LINUX上开启ssh服务,samba服务,都可以从WINDOWS上正常登陆了。

2:安装ftp:

   在rhel6光盘中自带了该软件,#mkdir /mnt/cdrom

#mount /dev/cdrom  /mnt/cdrom

安装软件包:#cd /mnt/cdrom/Packages

#rpm -ivh vsftpd*

安需要修改主配置文件:/etc/vsftpd/vsftpd.conf

可能出现问题:

a:登陆时如出现,"500 OOPS",这是因为SELinux 限制了用户登陆FTP服务器,要修改SELinux的设定值:#setsebool -P ftp_home_dir  on

b:如出现“ftp:connect:NO route to host”这样的错误提示,我们要修改防火墙规则,以便让21号端口通过防火墙:#iptables -I INPUT -p tcp --dport 21 -j ACCEPT,编辑/etc/selinux/config 文件,把"SELinux=enforcing"改为" SELinux =disabled", 关闭SELinux.

c:增加ftp用户,#useradd -s /sbin/nologin user1

#passwd  user1

修改ftp目录权限:#chmod -R o+w /var/www/html

开启禁用SELinux的FTP的传输审核功能:#getsebool -a|grep ftp

#setsebool  -P allow_ftpd_anon_write off

#setsebool -P ftpd_disable_trans on

#getsebool -a|grep ftp

3:安装apache

a,查看系统中是否已安装:#rpm -qa |grep httpd

b,在rhel6光盘中自带了该软件,#mkdir /mnt/cdrom

#mount /dev/cdrom  /mnt/cdrom

安装软件包:#cd /mnt/cdrom/Packages

用#find apr*,查找 appache所依赖软件,全部安装:# rpm -ivh apr*

然后安装:# rpm -ivh http_tools*

# rpm -ivh  http-2.2.15*

# rpm -ivh  httpd_manual*

再用#rpm -qa |grep httpd确认是否已安装完成

启动apache服务器:#service httpd restart

查看状态:service httpd status

查看服务 器占用端口情况:netstat -tnlp|grep httpd

如在ie中输入服务器地址能出现read hat testpage 页面,则说明已成功安装

4:安装mysql

a,利用YUM工具安装,#yum groupinstall mysql

完成后,用 setup,开启mysql服务。

b: 无法连接 mysql

//////////////////////////////////////////////////////////////////////////////////////////////////////////////////

linux下连接本机mysql有两种方式:

1、socket 方式

2、tcp/ip方式

就是这种问题,有些时候使用tcp/ip方式,有些时候是另外一种。

所以你可以有两种方式解决:

1、直接强制使用tcp/ip方式

2、把socket补上

方法:

1、mysql 后面加个 --protocol=tcpip

2、 关闭 mysql , cd 到 /tmp 然后输入: ln -s /var/lib/mysql/mysql.sock mysql.sock , 启动 mysql

//////////////////////////////////////////////////////////////

MySQL配置端口访问规则 - 允许外网访问 3306

MySQL安装后,默认只允许通过127.0.0.1的方式在服务器访问3306端口

1). 3306端口是不是没有打开?

使用nestat命令查看3306端口状态:

~# netstat -an | grep 3306

tcp        0      0 127.0.0.1:3306          0.0.0.0:*               LISTEN

从结果可以看出3306端口只是在IP 127.0.0.1上监听,所以拒绝了其他IP的访问。

解决方法:修改/etc/mysql/my.cnf文件。打开文件,找到下面内容:

# Instead of skip-networking the default is now to listen only on
# localhost which is more compatible and is not less secure.
bind-address  = 127.0.0.1

把上面这一行注释掉或者把127.0.0.1换成合适的IP,建议注释掉。

重新启动后,重新使用netstat检测:

~# netstat -an | grep 3306
tcp        0      0
0.0.0.0:3306           
0.0.0.0:*              
LISTEN

2). 问题解决了吗?

现在使用下面命令测试:

~# mysql -h 10.1.1.2 -u root -p
Enter password:
ERROR 1130 (00000): Host ‘B0324-Desktop.local‘ is not allowed to connect to
this MySQL server

结果出乎意料,还是不行。

解决方法:原来还需要把用户权限分配各远程用户, MySQL默认root账户不带%而是127.0.0.1,因此需要修改。

登录到mysql服务器,使用grant命令分配权限

mysql> grant all on database_name.*
to [email protected]‘%‘ identified by ‘user_password‘;

其中database_name、user_name和user_password根据实际情况设置。

完成后使用mysql命令连接,提示成功,为了确保正确可以再远程登陆测试一下。

ERROR 1130: Host ‘192.168.1.3‘ is not allowed to connect to this MySQL server

解决方法: 
1。 改表法。可能是你的帐号不允许从远程登陆,只能在localhost。这个时候只要在localhost的那台电脑,登入mysql后,更改 "mysql" 数据库里的
"user" 表里的 "host" 项,从"localhost"改称"%"

mysql -u root -pvmwaremysql>use mysql;mysql>update user set host = ‘%‘
where user = ‘root‘;mysql>select host, user from user;

执行FLUSH   PRIVILEGES命令   然后再进行连接

2. 授权法。例如,你想myuser使用mypassword从任何主机连接到mysql服务器的话。

GRANT ALL PRIVILEGES ON *.* TO ‘myuser‘@‘%‘ IDENTIFIED BY ‘mypassword‘ WITH
GRANT OPTION;
如果你想允许用户myuser从ip为192.168.1.3的主机连接到mysql服务器,并使用mypassword作为密码 
GRANT ALL PRIVILEGES ON *.* TO ‘root‘@‘192.168.1.3‘ IDENTIFIED BY ‘mypassword‘
WITH GRANT OPTION;

GRANT ALL PRIVILEGES ON *.* TO ‘root‘@‘10.10.40.54‘ IDENTIFIED BY ‘123456‘ WITH
GRANT OPTION;

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

常用检查步骤。

1. PING hostname 或 PING 189.xx.xx.xx 确认服务器IP层通信没有问题。如果PING通则继续(2),PING不通则找网络方面专家协助。
2. TELNET hostname 3306  确认服务器TCP层通信没有问题。(你的端口号可能不是3306),如通则继续,如不通,请检查mysqld 是否已经在运行,防火墙屏蔽了端口。
3. 检查用户权限, show grants ...

你的用户没有使用 root  账户,或者你的root账户没有授予登录权限,需要使用
GRANT ALL PRIVILEGES ON *.* TO ‘myuser‘@‘%‘ IDENTIFIED BY ‘mypassword‘ WITH GRANT OPTION;
授权主机是%,%即代表任意位置的主机,

//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
=====================================================================================================
故障现象 : 无法连接 mysql 
错误信息 :ERROR 1045 (28000): Access denied for user ‘usera‘@‘localhost‘ (using password:YES)
原因 : 用户账号并未创建
检查 :以管理员ROOT登录后,show grants for ‘usera‘@‘localhost‘; 或者 select user from mysql.user; 确认用户账号是否存在。
处理 :创建用户账号。
=====================================================================================================

==========================================================================
故障现象 : 无法连接 mysql 
错误信息 :ERROR 1130: Host xx.xx.xx.xx is not allowed to connect to this MySQL server 
原因 : mysql服务器没有赋予此客户端远程连接的权限。 
检查 :在mysql服务器本地查询mysql库里user表对应的host是否包含客户端机器的IP(%为不限制IP允许远程连接)。 
处理 :修改mysql库下的user表:update user set host = ‘%‘  where user =‘XXX‘;flush privileges;
====================================================================================

=====================================================================================================
故障现象 : 无法连接 mysql 
错误信息 :ERROR 2003 (HY000): Can‘t connect to MySQL server on ‘hostxxxxx‘ (10061)
原因 : mysqld数据库服务没有启动。
检查 :在windows 的任务管理器,或者 unix/linux 下 ps -aux | grep mysql 看一下。确认服务已经启动。
处理 :启动mysqld 服务
=====================================================================================================

===================================================================================================== 
故障现象 : 无法连接 mysql 
错误信息 :ERROR 2003 (HY000): Can‘t connect to MySQL server on ‘hostxxxxx‘ (10061) 
原因 : mysqld 客户端与服务端端口不一致。 
检查 :在my.ini 设置下服务端口 这种情况特别是客户都与远程服务器端口不一致 很容易出现的问题
处理 :启动mysqld 服务 
=====================================================================================================

===================================================================================================== 
故障现象 : 无法连接 mysql windows
错误信息 :ERROR 2003 (HY000): Can‘t connect to MySQL server on ‘hostxxxxx‘ (10061) 
原因 :  同时开启大量的tcp端口和而仅有一小部分短命端口时,当他们处于time_wait时期,mysql可能会跑错端口
检查 :在windows 默认会开启5000个临时端口供调用,而他们的生命仅仅是120s,意思是在关闭端口的时候会有120秒的延时
处理 :减少不不必要的tcp端口。
修改注册表
=====================================================================================================

===================================================================================================== 
故障现象 : 无法连接 mysql 
错误信息 :ERROR 2002 (HY000): Can‘t connect to local MySQL server server through socket ‘/var/lib/mysql/mysql.sock‘(111) 
原因 : mysqld的mysql.sock没在相应的位置。
处理 :1.先查看/etc/rc.d/init.d/mysql status 看看是否启动
2.改权限 chown -R mysql:msyql /var/lib/mysql
3.修改/etc/my.cnf (注意:先停数据库)
[mysqld]
datadir=/usr/local/mysql/data
socket=/var/lib/mysql/mysql.sock
[mysql.server]
user=mysql
basedir=/usr/local/mysql
[client]
socker=/var/lib/mysql/mysql.sock
4.启动数据库
=====================================================================================================

归纳如下:

故障现象 : 无法连接 mysql 
===================================================================================
错误信息 :ERROR 2003 (HY000): Can‘t connect to MySQL server on ‘hostxxxxx‘ (10061)
原因 : mysqld数据库服务没有启动。
检查 :在windows 的任务管理器,或者 unix/linux 下 ps -aux | grep mysql 看一下。确认服务已经启动。
处理 :启动mysqld 服务
===================================================================================
错误信息 :ERROR 1130: Host xx.xx.xx.xx is not allowed to connect to this MySQL server 
原因 : mysql服务器没有赋予此客户端远程连接的权限。 
检查 :在mysql服务器本地查询mysql库里user表对应的host是否包含客户端机器的IP(%为不限制IP允许远程连接)。 
处理 :修改mysql库下的user表:update user set host = ‘%‘  where user =‘XXX‘;flush privileges;
===================================================================================
错误信息 :ERROR 1045 (28000): Access denied for user ‘usera‘@‘localhost‘ (using password:YES)
原因 : 用户账号并未创建
检查 :以管理员ROOT登录后,show grants for ‘usera‘@‘localhost‘; 或者 select user from mysql.user; 确认用户账号是否存在。
处理 :创建用户账号。
===================================================================================
错误信息 :ERROR 2003 (HY000): Can‘t connect to MySQL server on ‘hostxxxxx‘ (10061) 
原因 : mysqld 客户端与服务端端口不一致。 
检查 :在my.ini 设置下服务端口 这种情况特别是客户都与远程服务器端口不一致 很容易出现的问题
处理 :启动mysqld 服务 
===================================================================================
错误信息 :ERROR 2002 (HY000): Can‘t connect to local MySQL server server through socket ‘/var/lib/mysql/mysql.sock‘(111) 
原因 : mysqld的mysql.sock没在相应的位置。
处理 :1.先查看/etc/rc.d/init.d/mysql status 看看是否启动
       2.改权限 chown -R mysql:msyql /var/lib/mysql
       3.修改/etc/my.cnf (注意:先停数据库)
       [mysqld]
       datadir=/usr/local/mysql/data
       socket=/var/lib/mysql/mysql.sock
       [mysql.server]
       user=mysql
       basedir=/usr/local/mysql
       [client]
       socker=/var/lib/mysql/mysql.sock
       4.启动数据库
===================================================================================

时间: 2024-10-08 20:51:04

vm虚拟机上安装apache+php+ftp+mysql的相关文章

在VM虚拟机上安装Microsoft Dynamics CRM 2016 步骤图解及安装注意事项(转载)

本文转载 出处:http://www.cnblogs.com/lujiangping/archive/2016/06/02/5552443.html 安装Dynamics CRM 2016环境配置要求: 系统版本:Windows Server 2012 R2(必须) SQL 版本: SQLServer2014SP1-FullSlipstream-x64-ENU(必须) Dynamics CRM 版本:CRM2016-Server-ENU-amd64(必须) 安装步骤: 1.在虚拟机安装windo

windowsxp系统在VM虚拟机上的安装步骤以及虚拟机共享文件夹设置

一.windowsxp在VM虚拟机上的安装 网站上下载版本为win xp sp3 vl VL=VOL=Volume License(批量授权许可)VL是大客户版,即用VL的key安装的系统是不需要激活的,不带VL的是安装完后需要激活的零售版. 使用工具: VMware Workstation Pro zh-hans_windows_xp_professional_with_service_pack_3_x86_cd_vl_x14-74070.iso 最新windows xp sp3序列号(通过正

在VMware虚拟机上安装Linux操作系统(Ubuntu)

一,虚拟机的安装: 1,目前比较常见的虚拟机(Virtual Machine),来源度娘:                                   Virtual PC                                   Virtual Box                             VMware Workstation VirtualBox VirtualBox是开源的,不同于VM,而且功能强大,可以在 Linux/Mac 和 Windows 主机中

虚拟机上安装Linux操作系统

很久之前就知道虚拟机这个东西,也都在虚拟机上安装过Windows的操作系统和Linux的操作系统,但是一直都没有去做笔记. 最近还是比较有时间,就移除了前两天刚刚安装的Linux系统,重新安装一次,做一个记录. 至于虚拟机的安装就没有做详细的记录,这个跟安装其他的什么软件没什么区别. 好了.接下来就开始图文并茂的去记录一下安装Linux的操作系统的过程. 1.那么第一步肯定是要下载Linux的镜像文件,至于下载也早就下载好了.是rhel-server-6.6的,一个ISO的压缩包. 2.打开虚拟

【入门】在虚拟机上安装一个linux系统

根据计划,需要在虚拟机上安装一个linux系统,用作web架构学习的服务器. 公司项目的服务器用的是linux系统,具体版本未知.虽然我们开发不用关注最后的部署,但多少也接触了一些,算是有一定的了解,而java web通常也是部署在linux上,所以还是选择了linux.至于具体的版本,最终选择了centos. 虚拟机的选择,主要是VMware和VirtualBox了.由于VMware要收费,于是下载了VirtualBox.没想到创建系统时,没有linux64的选项.网上一查,需要打开bios的

虚拟机上安装Linux后完成网络配置

在虚拟机上安装Linux系统后需要对网络进行配置 1.首先,在本地网络中添加虚拟网卡 编辑>虚拟网络编辑器 点击"添加网络" 选择"VMnet8",点击"确定".添加网络后,选择"NAT模式" 2.添加虚拟网卡成功后,进入系统 执行命令ifconfig查看当前网络情况 修改网卡配置文件 vi /etc/sysconfig/network-scripts/ifcfg-eth0 主要添加以下四项 IPADDR=192.168

VMware虚拟机上安装linux和克隆

虚拟机上安装好一台linux 系统后,为了快速搭建hadoop集群,需要再安装几个linux系统,比较笨的办法可以重新用ios 镜像文件进行安装,但是重新安装需要重新配置一些信息而且安装时间比较长(一般在半个小时左右).所以建议使用VMWare 特用的克隆功能快速的安装linux系统(克隆时间在5分钟左右). 具体步骤如下: 第一步: 选择我们需要克隆的操作系统,右击鼠标,然后选择"管理"-"克隆",如下图: 第二步:直接点击"下一步",如下图:

Mac系统下使用VirtualBox虚拟机安装win7--第三步 在虚拟机上安装 Windows 7

第三步 在虚拟机上安装 Windows 7 等待虚拟机进入 Windows 7 的安装界面以后,在语言,货币,键盘输入法这一面,建议保持默认设置,直接点击“下一步”按钮,如图所示 接下来点击“现在安装”按钮,如图所示 在协议条款中,勾选我同意,点击“下一步”按钮,如图所示 在安装系统的类型中,选择“自定义”一项,如图所示 在安装系统的磁盘选项中,直接点击“下一步”按钮就好,如图所示 随后系统会自动在虚拟机上安装了,后面按提示选择操作就可以了. 由于使用的 Windows 安装镜像文件的不同,可能

在VMware vSphere 5.5的虚拟机上安装XenServer 6.2

随着XenServer 6.2在2013年6月的全面开源,对于虚拟化技术的爱好者应该算是一个令人欣喜若狂的消息!Citrix并且同时成立了XenServer.org开发者社区.我们现在可以在这个网站上下载所有XenServer的源代码,开发文档说明等. XenServer 6.2 的安装光盘ISO以及XenCenter的Windows安装包也可以在该社区网站下载:http://www.xenserver.org/open-source-virtualization-download.html