搭建lamp(CentOS7+Apache+MySQL+PHP)环境

本文参考资料:

1.如何搭建lamp(CentOS7+Apache+MySQL+PHP)环境http://www.cnblogs.com/zakun/p/5840073.html

2.Linux系统MySQL开启远程连接  http://www.cnblogs.com/chenjw-note/p/5887908.html

3.centos7 mysql数据库安装和配置 http://www.cnblogs.com/starof/p/4680083.html

 

物理机安装:

1.Linux系统用的是: CentOS Linux release 7.3.1611 (Core)

2. 版本: Linux version 3.10.0-514.10.2.el7.x86_64 (builder@kbuilder.dev.centos.org) (gcc version 4.8.5 20150623 (RedHat 4.8.5-11) (GCC) ) #1 SMP Fri Mar 3 00:04:05 UTC 2017

 

安装过程(以下都是在root用户权限):

一、安装Apache
1.安装
yum -y install httpd
2.开启apache服务
systemctl start httpd.service
3.设置apache服务开机启动
systemctl enable httpd.service
4.验证apache服务是否安装成功
在本机浏览器中输入虚拟机的ip地址,CentOS7查看ip地址的方式为:
ip addr
(阿里云不需要用这种方式查看,外网ip已经在你主机列表那里给你写出来了的;)
这里是访问不成功的
(阿里云用外网访问,能成功,不需要做以下步骤)
查了资料,说法是,CentOS7用的是Firewall-cmd,CentOS7之前用的是iptables防火墙;要想让外网能访问到apache主目录,就需要做以下的操作:
firewall-cmd --permanent --zone=public --add-service=http
firewall-cmd --permanent --zone=public --add-service=https
firewall-cmd --reload
然后再访问外网ip,如果看到apache默认的页面--有Testing 123...字样,便是成功安装了apache服务了;

二、安装PHP
1.安装
yum -y install php
2.重启apache服务
systemctl restart httpd或者systemctl restart httpd.service
然后,你可以写一个php文件在浏览器中运行一下了;
eg:
vi /var/www/html/info.php
i
<?php phpinfo(); ?>
Esc
:wq
然后,在自己电脑浏览器输入 127.0.0.1/info.php
运行,会出现php的一些信息

三、安装MySQL

1.官网下载安装mysql-server

# wget http://dev.mysql.com/get/mysql-community-release-el7-5.noarch.rpm
# rpm -ivh mysql-community-release-el7-5.noarch.rpm
# yum install mysql-community-server

安装成功后重启mysql服务。

# service mysqld restart

初次安装mysql,root账户没有密码。

复制代码
[root@yl-web yl]# mysql -u root 
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 3
Server version: 5.6.26 MySQL Community Server (GPL)

Copyright (c) 2000, 2015, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| test               |
+--------------------+
4 rows in set (0.01 sec)

mysql> 
复制代码

设置密码

# mysql -uroot -p
// 更新 mysql 库中 user 表的字段:
MariaDB [(none)]> use mysql;
MariaDB [mysql]> UPDATE user SET password=password('newpassword') WHERE user='root';
MariaDB [mysql]> flush privileges;
MariaDB [mysql]> exit;

不需要重启数据库即可生效。

在mysql安装过程中如下内容:

 

复制代码
Installed:
  mysql-community-client.x86_64 0:5.6.26-2.el7                mysql-community-devel.x86_64 0:5.6.26-2.el7                
  mysql-community-libs.x86_64 0:5.6.26-2.el7                  mysql-community-server.x86_64 0:5.6.26-2.el7               

Dependency Installed:
  mysql-community-common.x86_64 0:5.6.26-2.el7                                                                            

Replaced:
  mariadb.x86_64 1:5.5.41-2.el7_0          mariadb-devel.x86_64 1:5.5.41-2.el7_0   mariadb-libs.x86_64 1:5.5.41-2.el7_0  
  mariadb-server.x86_64 1:5.5.41-2.el7_0 

复制代码

远程连接设置

把在所有数据库的所有表的所有权限赋值给位于所有IP地址的root用户。


mysql> grant all privileges on *.* to root@'%'identified by '123456';
或者
mysql> GRANT ALL ON *.* TO 'root'@'%';
mysql>  flush privileges;  //命令立即生效
mysql> exit;

如果是新用户而不是root,则要先新建用户

mysql>create user 'username'@'%' identified by 'password';  

说明: mysql>create user '用户名'@'%' ip地址 by '密码'

此时就可以进行远程连接了。

 

数据库连接

1.远程连接是root进行连接的用户。

2.本地项目连接 有127.0.0.1 不可以使用 就尝试 localhost 连接ip设置。

 

四、将PHP和MySQL关联起来
yum search php,选择你需要的安装:yum -y install php-mysql

五、安装常用的PHP模块
例如,GD库,curl,mbstring,...
1.安装:
yum -y install php-gd php-ldap php-odbc php-pear php-xml php-xmlrpc php-mbstring php-snmp php-soap curl curl-devel
注:如果 不安装GD库,php项目中的图片不显示比如:验证码


2.重启apache服务
systemctl restart httpd.service
然后,再次在浏览器中运行info.php,你会看到安装的模块的信息;

至此,LAMP环境就搭建好了。

注:初次将项目放入yum安装的目录/var/www/html/文件下,进行浏览器登陆http://127.0.0.1/index.php首页的图片全没有出现

解决办法: 问题网站没有权限访问文件内容,打开项目内图片查看权限

[root@localhost jncf]# cd /var/www/
[root@localhost www]# ls
cgi-bin  html
[root@localhost www]# chmod -R 777 *;

 

 

远程示例:(来源:http://www.cnblogs.com/chenjw-note/p/5887908.html

1.root用户用来远程连接

 

  GRANT ALL PRIVILEGES ON *.* TO 'itoffice'@'%' IDENTIFIED BY 'itoffice' WITH GRANT OPTION;

 

(第一个root表示用户名,%表示所有的电脑都可以连接,也可以设置某个ip地址运行连接,第二个123456表示密码)

 

 



2.执行 flush privileges;命令立即生效

 

 
 

3.查询数据库的用户(看到如下内容表示创建新用户成功了)

 SELECT DISTINCT CONCAT('User: ''',user,'''@''',host,''';') AS query FROM mysql.user;

 

4.使用exit命令退出MySQL

然后打开vim  /etc/mysql/my.cnf

将bind-address    = 127.0.0.1

 设置成bind-address    = 0.0.0.0(设备地址)

重新启动(命令如下):

/etc/init.d/mysql stop

/etc/init.d/mysql start

 

5.查看端口号

 show global variables like 'port'; 

6.设置navicat连接。

 

7.点击连接测试看到如下内容表示成功。

 

 

 

posted @ 2017-03-16 18:10  ComeComeGo  阅读(2124)  评论(0编辑  收藏  举报