視訊直播系統開發中的資料庫建立方案

xrdzj_2010發表於2019-02-25

我們之前為大家介紹過直播平臺搭建中的伺服器環境配置流程。我們今天介紹下視訊直播平臺開發搭建中資料庫該如何建立?

一、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/

二、建立資料庫相關資訊

主要包括視訊直播平臺的資料庫使用者名稱、資料庫名稱、設定密碼資訊等。

上傳之前,需要把原始碼中的/root/backups/temp/資料庫名_時間戳.sql檔案中的域名替換,

替換為:www.***.com(***指的是自己的域名);設定雲伺服器加速域名,例如騰訊雲加速域名等。

三、匯入附近這個函式

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

通過以上步驟即可實現視訊直播平臺的資料庫建立。在完成了搭建換將配置及資料庫建立之後,接下來就可以通過視訊直播原始碼進行程式的部署和除錯了。我們晚些時候會整理出視訊直播程式的部署流程。

相關文章