视频直播系统开发中的数据库创建方案

本文涉及的产品
视频直播,500GB 1个月
简介: 视频直播系统开发完成后,需要通过搭建环境配置、数据库创建、程序部署等流程来实现最终的系统搭建部署,上线运营。

我们之前为大家介绍过直播平台搭建中的服务器环境配置流程。我们今天介绍下视频直播平台开发搭建中数据库该如何创建?

一、phpMyAdmin一键搭建插件

vim /etc/my.cnf

在my.cnf 里面设置

添加语句

sql_mode='STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION'

访问

http://你的ip地址/phpMyAdmin/

5a78046701fa169b7e0e23ec4631d0bd8c15afbb 

二、创建数据库相关信息

主要包括视频直播平台的数据库用户名、数据库名称、设置密码信息等。

e3917364310257d4d44b1fe1d017e69a6c0fce6c 

上传之前,需要把源码中的/root/backups/temp/数据库名_时间戳.sql文件中的域名替换,

替换为:www.***.com(***指的是自己的域名);设置云服务器加速域名,例如腾讯云加速域名等。

c910bd7770ba88838f3e3c1bf33933786cbedda6 

46fe30510e88a74680247e6efd58ad8fe3b831b3

三、导入附近这个函数

getDistance.sql

内容如下:

Function structure for getDistance

DROP FUNCTION IF EXISTS `getDistance`;

delimiter ;;

CREATE DEFINER=`phonelive`@`%` FUNCTION `getDistance`(lat1 FLOAT, lon1 FLOAT, lat2 FLOAT, lon2 FLOAT) RETURNS float

    DETERMINISTIC

BEGIN

    RETURN ROUND(6378.138 * 2 * ASIN(SQRT(POW(SIN((lat1 * PI() / 180 - lat2 * PI() / 180) / 2), 2)

           + COS(lat1 * PI() / 180) * COS(lat2 * PI() / 180)

           * POW(SIN(( lon1 * PI() / 180 - lon2 * PI() / 180 ) / 2),2))),2);

END

;;

delimiter ;

SET FOREIGN_KEY_CHECKS = 1;

注意:内容中的phonelive是对应用户名,比如您的用户名live,CREATE DEFINER=`live`@`%` FUNCTION

四、WEB站点搭建

1.在oneinstack目录下添加虚拟机

cd ~/oneinstack

./vhost.sh

选项选择

1.选择1 ,Use HTTP Only

2.然后输入域名

3.输入网站的文件目录,直接回车就行

4.然后添加其他域名,有的话就输入 y ,没有就输入 n

5.是否添加防盗链,输入n

Do you want to add hotlink protection? [y/n]: n

6.Allow Rewrite rule? [y/n]: y

7.输入 y ,开启日志

Allow Nginx/Tengine/OpenResty access_log? [y/n]: y

8.Allow Rewrite rule? [y/n]: y

Please input the rewrite of programme :

wordpress,opencart,magento2,drupal,joomla,laravel,thinkphp,discuz,typecho,ecshop rewrite was exist.

(Default rewrite: other): thinkphp

五、Nginx thinkphp 静态化

1、修改/usr/local/nginx/conf/rewrite/thinkphp.conf,

vim /usr/local/nginx/conf/rewrite/thinkphp.conf

文件内容如下;

location / {

    if (!-e $request_filename) {

      

        rewrite ^(.*)$ /index.php?s=$1 last;

        break;

    }

}

修改为

location / {

    if (!-e $request_filename) {

       rewrite ^/([0-9]+)$ /index.php?m=Show&a=index&roomnum=$1 last;

       #rewrite ^(.*)$ /index.php?s=$1 last;

        rewrite ^(.*)$ /index.php?s=$1 last;

        break;

    }

}

2、然后创建pathinfo.conf文件

touch /usr/local/nginx/conf/pathinfo.conf

vim /usr/local/nginx/conf/pathinfo.conf

然后输入以下内容并保存

set $real_script_name $fastcgi_script_name;

if ($fastcgi_script_name ~ "(.+?\.php)(/.*)") {

set $real_script_name $1;

set $path_info $2;

}

fastcgi_param SCRIPT_FILENAME $document_root$real_script_name;

fastcgi_param SCRIPT_NAME $real_script_name;

fastcgi_param PATH_INFO $path_info;

3、然后编辑 /usr/local/nginx/conf/vhost/您的域名.conf 文件,

vim /usr/local/nginx/conf/vhost/您的域名.conf

编辑文件如下.

location ~ \.php {

#fastcgi_pass remote_php_ip:9000;

fastcgi_pass unix:/dev/shm/php-cgi.sock;

fastcgi_index index.php;

# include fastcgi_params;

include fastcgi.conf;

}

在include fastcgi.conf; 下面加入一句

include pathinfo.conf;

然后修改/usr/local/php/etc/php.ini,搜索cgi.fix_pathinfo.把值从0改成1.

vim /usr/local/php/etc/php.ini

cgi.fix_pathinfo=1

通过以上步骤即可实现视频直播平台的数据库创建。在完成了搭建换将配置及数据库创建之后,接下来就可以通过视频直播源码进行程序的部署和调试了。我们晚些时候会整理出视频直播程序的部署流程。

相关文章
|
9月前
|
中间件 关系型数据库 Java
MySQL数据库分库分表方案
MySQL数据库分库分表方案
319 0
MySQL数据库分库分表方案
|
5月前
|
消息中间件 canal 缓存
项目实战:一步步实现高效缓存与数据库的数据一致性方案
Hello,大家好!我是热爱分享技术的小米。今天探讨在个人项目中如何保证数据一致性,尤其是在缓存与数据库同步时面临的挑战。文中介绍了常见的CacheAside模式,以及结合消息队列和请求串行化的方法,确保数据一致性。通过不同方案的分析,希望能给大家带来启发。如果你对这些技术感兴趣,欢迎关注我的微信公众号“软件求生”,获取更多技术干货!
293 6
项目实战:一步步实现高效缓存与数据库的数据一致性方案
|
5月前
|
canal 缓存 NoSQL
Redis缓存与数据库如何保证一致性?同步删除+延时双删+异步监听+多重保障方案
根据对一致性的要求程度,提出多种解决方案:同步删除、同步删除+可靠消息、延时双删、异步监听+可靠消息、多重保障方案
Redis缓存与数据库如何保证一致性?同步删除+延时双删+异步监听+多重保障方案
|
3天前
|
SQL 存储 关系型数据库
【SQL技术】不同数据库引擎 SQL 优化方案剖析
不同数据库系统(MySQL、PostgreSQL、Doris、Hive)的SQL优化策略。存储引擎特点、SQL执行流程及常见操作(如条件查询、排序、聚合函数)的优化方法。针对各数据库,索引使用、分区裁剪、谓词下推等技术,并提供了具体的SQL示例。通用的SQL调优技巧,如避免使用`COUNT(DISTINCT)`、减少小文件问题、慎重使用`SELECT *`等。通过合理选择和应用这些优化策略,可以显著提升数据库查询性能和系统稳定性。
32 9
|
26天前
|
存储 缓存 NoSQL
云端问道21期方案教学-应对高并发,利用云数据库 Tair(兼容 Redis®*)缓存实现极速响应
云端问道21期方案教学-应对高并发,利用云数据库 Tair(兼容 Redis®*)缓存实现极速响应
|
6月前
|
关系型数据库 MySQL 数据库
|
6月前
|
存储 机器学习/深度学习 自然语言处理
LangChain与向量数据库:高效的信息检索方案
【8月更文第4天】随着自然语言处理技术的发展,特别是深度学习的进步,我们能够更加高效地处理大量的文本数据。LangChain 作为一种强大的工具链,旨在简化和加速构建复杂的自然语言处理应用程序。结合向量数据库,LangChain 可以实现高效且精准的信息检索功能。本文将探讨这一组合的工作原理,并通过一个具体的实现案例来展示其在实际应用中的效果。
604 2
|
2月前
|
存储 Oracle 关系型数据库
数据库数据恢复—ORACLE常见故障的数据恢复方案
Oracle数据库常见故障表现: 1、ORACLE数据库无法启动或无法正常工作。 2、ORACLE ASM存储破坏。 3、ORACLE数据文件丢失。 4、ORACLE数据文件部分损坏。 5、ORACLE DUMP文件损坏。
131 11
|
2月前
|
SQL 关系型数据库 MySQL
数据库数据恢复—Mysql数据库表记录丢失的数据恢复方案
Mysql数据库故障: Mysql数据库表记录丢失。 Mysql数据库故障表现: 1、Mysql数据库表中无任何数据或只有部分数据。 2、客户端无法查询到完整的信息。
|
3月前
|
缓存 关系型数据库 MySQL
高并发架构系列:数据库主从同步的 3 种方案
本文详解高并发场景下数据库主从同步的三种解决方案:数据主从同步、数据库半同步复制、数据库中间件同步和缓存记录写key同步,旨在帮助解决数据一致性问题。关注【mikechen的互联网架构】,10年+BAT架构经验倾囊相授。
高并发架构系列:数据库主从同步的 3 种方案

热门文章

最新文章