尝试在Ubuntu系统上架设一个网络服务器,即把要被访问的网页等放置在你的Ubuntu系统上,然后他人通过浏览器来访问

标签: linux  ubuntu  mysql  php  linux

尝试在Ubuntu系统上架设一个网络服务器,即把要被访问的网页等放置在你的Ubuntu系统上,然后他人通过浏览器来访问

安装:

我的是ubuntu18.04

安装apache:

1.sudo apt update
2.sudo apt install apache2

安装mysql:

sudo apt install mysql-server //用了好久的时间
在这里插入图片描述

在安装apache和mysql的install的时候总有这样的问题
在这里插入图片描述
百度以后

采取如下措施:
在这里插入图片描述
就可以了

唉,等它安装好以后,突然发现…
以上是失败的

在安装过程中没有出现创建用户和密码,但是打开mysql,居然要输入密码,,
有两种解决方式:

1.https://blog.csdn.net/qq_41932665/article/details/88382861

//该博客面对以上情况处理这种问题,不用重装,但是我那时没发现这个,是之后才发现的,所以采用的是第二种方法

2.如果是和我一样先装失败的,请先看https://blog.csdn.net/iehadoop/article/details/82961264

讲的是如何删除已有mysql的,要先删除已有才能重装,唉
实操:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
一直操作到 dpkg –list|grep mysql以后没有东西为止,才是删除完成

然后是装mysql8.0
https://blog.csdn.net/iehadoop/article/details/82961311

以下是我的实操图:
mysql-apt-config_0.8.14-1_all.deb是在https://dev.mysql.com/downloads/repo/apt/
官网下载的,用虚拟机运行ubuntu的可以考虑直接从windows上下载后拖拽至ubuntu,感觉会快点
在这里插入图片描述
在这里插入图片描述

注意,在sudo apt install mysql-server这一步会出现选择加密方式,一定要选择5.x这个(我因为这个又重装了一遍,太南了!!),这里也会引导你创建用户和密码的
在这里插入图片描述

哈哈,终于成功了
在这里插入图片描述

php:

sudo apt install php
在这里插入图片描述

sudo apt-get install php7.2-mysql(因为我的php是7.2)

检验是否成功:

将测试用的php文件test.php:

<?php phpinfo(); ?>

写入var/www/html(var文件不在home下的,在其上一级)中,注意,此前要先一步操作
在这里插入图片描述
在这里插入图片描述

所有的都安装成功了

开始实现简易的在Apache2上通过php访问mysql

主要步骤:

  1. 在mysql数据库中创建一个关于学生成绩的数据库,其中有多个学生,并且每个学生对应一个分数;
  2. 书写php文件,访问数据库中的学生成绩,并且显示出来;

具体操作:

  1. 登录数据库:
    mysql –u root –p

  2. 创建新用户:test,密码为:123456
    Create user “test” identified by “123456”

  3. 创建scores数据库:create database scores;

    使用scores数据库:use scores;

    创建table:
    create table scorename( name char(20) not null, score int not null) DEFAULT CHARSET=UTF8;(注意大小写);

    在表中插入三个学生:
    insert into scorename(name, score) values(‘张三’, 78), (‘李四’, 87), (‘王五’, 98);

    将scores数据库的所有权限赋给test用户:
    //grant all privileges on scores.* to test identified by “123456”(这个我用会报错);

    采用如下:
    grant all privileges on scores.* to test with grant option;

    最后退出:quit

  4. 以test用户登录;
    选择scores数据库;use scores;
    查看scores数据库中的信息:show tables; 发现只有scorename;
    再查看表中的信息:select * from scorename;

  5. 书写一个php文件,通过浏览器访问后,可以在浏览器端显示上述的信息;那么这个php怎么写呢?(注意不同的php版本语法会有区别,请自行根据使用的版本调整,如下是针对php7.0)

<?php
	$con=new mysqli("127.0.0.1","test","123456");
	if(!$con){
		die('cound not connect: ' . mysql_error());
	}else{
		$con->query("SET NAMES 'utf8'");
		$con->select_db("scores");
		$result=$con->query("SELECT * FROM scorename");

		while($row=$result->fetch_assoc())
		{
			echo $row['name'] . " " . $row['score'];
			echo "<br />";
		}
	}
	mysql_close($con);
?>

浏览器中访问上述: 127.0.0.1/test.php
如果成功,则出现如下的页面:
在这里插入图片描述

原文链接:加载失败,请重新获取