From 16819e4daf63c13cf12faac474afa4dda10d8a2d Mon Sep 17 00:00:00 2001 From: ZHJ0125 Date: Sat, 20 Jun 2020 13:39:14 +0800 Subject: [PATCH] Update MySQL setup on READ --- README.md | 192 +++++++++++++++++++++++++++++++++++++++++++++++++++--- 1 file changed, 184 insertions(+), 8 deletions(-) diff --git a/README.md b/README.md index b1f9048..592e8d0 100644 --- a/README.md +++ b/README.md @@ -2,34 +2,210 @@ Linux C 机票网络售票系统 -## 展示视频 +## 一、运行环境配置 + +本项目中的航班信息存储使用了MySQL数据库,运行程序前,请确保按照如下步骤配置数据库 + +### 1.1 搭建LAMP环境 + +* 安装Apache + +```shell +sudo apt-get update +sudo apt-get install apache2 +``` + +* 安装PHP + +```shell +sudo apt-get update +sudo apt-get install php +``` + +* 安装MySQL数据库 + +```shell +sudo apt-get install mysql-client mysql-server +sudo apt-get install libmysqlclient-dev +``` + +* 安装PHPMyAdmin + +```shell +sudo apt-get install phpmyadmin +ln -s /usr/share/phpmyadmin /var/www/html/phpmyadmin +``` + +* 测试LAMP环境 + +使用ifconfig语句获取本地IP地址,在浏览器地址栏中输入`ip/phpmyadmin`,如:`192.168.96.131/phpmyadmin`,若出现PHPMyAdmin界面则表示LAMP环境配置成功。 + +### 1.2 数据库配置 + +* MySQL命令行操作 + +在Ubuntu终端中输入以下命令进入MySQL命令行界面 + +```shell +sudo mysql -u root +``` + +* 创建数据库 + +使用以下语句创建新的数据库用户 + +```shell +CREATE USER 'zhj'@'localhost' IDENTIFIED BY '666588'; +GRANT ALL PRIVILEGES ON *.* TO 'zhj'@'localhost' WITH GRANT OPTION; +create database linux; +FLUSH PRIVILEGES; +``` + +* 验证数据库安装 + +在终端输入以下语句,若存在linux数据库,则表示创建成功。 + +```shell +sudo mysql -u root +show database; +``` + +数据库配置过程的完整操作示例如下: + +```shell +zhj@vmware:~$ sudo mysql -u root +Welcome to the MySQL monitor. Commands end with ; or \g. +Your MySQL connection id is 45 +Server version: 5.7.30-0ubuntu0.18.04.1 (Ubuntu) + +Copyright (c) 2000, 2020, 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> CREATE USER 'zhj'@'localhost' IDENTIFIED BY '666588'; +Query OK, 0 rows affected (0.00 sec) + +mysql> GRANT ALL PRIVILEGES ON *.* TO 'zhj'@'localhost' WITH GRANT OPTION; +Query OK, 0 rows affected (0.00 sec) + +mysql> FLUSH PRIVILEGES; +Query OK, 0 rows affected (0.01 sec) + +mysql> create database linux; +Query OK, 1 row affected (0.00 sec) + +mysql> show databases; ++--------------------+ +| Database | ++--------------------+ +| information_schema | +| linux | +| mysql | +| performance_schema | +| phpmyadmin | +| sys | ++--------------------+ +6 rows in set (0.00 sec) + +mysql> quit +Bye + +``` + +至此,您已经配置好了本项目所需的数据库。接下来需要使用C语言程序创建数据表。 + +* 创建数据表 + +进入到项目的`/TicketingSystem/Data`目录下,执行以下语句编译并执行C程序 + +```shell +gcc mysql_setup.c -o mysql_setup -lmysqlclient +./mysql_setup +``` + +完整操作示例如下: + +```shell +zhj@vmware:~/TicketingSystem/Data$ ls +images mysql_setup.c +zhj@vmware:~/TicketingSystem/Data$ gcc mysql_setup.c -o mysql_setup -lmysqlclient +zhj@vmware:~/TicketingSystem/Data$ ls +images mysql_setup mysql_setup.c +zhj@vmware:~/TicketingSystem/Data$ ./mysql_setup +--增加数据测试-- +flight_ID ticket_num ticket_price +1 100 300 +2 100 300 +3 100 300 +4 100 300 +5 100 300 +6 100 300 +7 100 300 +8 100 300 +9 100 300 +10 100 300 +zhj@vmware:~/TicketingSystem/Data$ + +``` + +* 验证配置 + +现在您已经配置完成了本程序所需的所有软件,您可以在浏览器中进入PHPMyAdmin页面,用户名输入`zhj`,密码输入`666588`。 + +在PHPMyAdmin页面查看`linux`数据库中的`tickets`数据表,这就是本项目用于存储航班信息的数据表。 + +如果您执行了**创建数据表**章节的内容,现在该数据表中就已经存在初始化的数据了。 + +恭喜您已经完成了数据库初始化,现在打开QT for Linux软件,运行我们的项目吧! + +--- + +## 二、项目展示 [航班网络售票模拟系统 - 展示视频](https://www.bilibili.com/video/BV14T4y1J7bt/) -## 服务端 +### 2.1 服务端 ![server](Data/images/server.png) -## 客户购票端欢迎界面 +### 2.2 客户购票端 + +* 客户购票端欢迎界面 ![welcome](Data/images/welcome.png) -## 客户购票端 +* 客户购票端 ![client](Data/images/client.png) -## 管理员售票端登录界面 +### 2.3 管理员售票端 + +* 管理员售票端登录界面 ![login](Data/images/login.png) -## 管理员售票端 +* 管理员售票端 ![admin](Data/images/admin.png) -## 数据库界面 +### 2.4 数据库界面 ![mysql](Data/images/mysql.png) -## 关于我们 +### 2.5 关于我们 ![info](Data/images/info.png) + +--- + +## 三、项目代码说明 + +Gitee 仓库地址(推荐): [https://gitee.com/zhj0125/TicketingSystem](https://gitee.com/zhj0125/TicketingSystem) + +GitHub 仓库地址: [https://github.com/ZHJ0125/TicketingSystem](https://github.com/ZHJ0125/TicketingSystem) + +该代码是在《LINUX C编程从入门到精通》(刘学勇编著 ISBN:978-7-121-17415-5)书中例题的基础上修改的。如果您对代码有任何疑问或修改意见,欢迎提出[issue](https://gitee.com/zhj0125/TicketingSystem/issues) 或者直接私信我们,谢谢。