Q100617: Flix के लिए MySQL क्वेरीज़ के उदाहरण


सारांश

यह लेख Flix प्रशासकों के लिए है। इसमें कुछ उदाहरण दिए गए हैं कि Flix के बारे में जानकारी इकट्ठा करने के लिए सीधे MySQL से क्वेरी कैसे की जा सकती है।


अधिक जानकारी

Flix अपने सभी शो, सीक्वेंस और पैनल की जानकारी MySQL डेटाबेस में संग्रहीत करता है। उन्नत Flix व्यवस्थापक इस जानकारी को सीधे MySQL से प्राप्त कर सकते हैं। यह विशिष्ट जानकारी निकालने और Flix समस्या निवारण में उपयोगी हो सकता है।

आप MySQL के साथ इंटरफेस करने के लिए अंतर्निहित mysql कमांड-लाइन टूल या किसी तृतीय पक्ष टूल जैसे MySQL Workbench या Sequel Pro का उपयोग कर सकते हैं।

नीचे दिए गए उदाहरणों में आपको प्रश्नों को वैध बनाने के लिए " <?> " वर्णों को आवश्यक जानकारी से प्रतिस्थापित करना होगा।

शो आईडी प्राप्त करें, इसके नाम का उपयोग करके

इस उदाहरण में, आप शो के नाम का उपयोग करके किसी प्रोजेक्ट के लिए शो आईडी प्राप्त कर सकते हैं।

mysql> SELECT
    `shows`.`show_id`,
    `shows`.`title`
FROM
    `shows`
WHERE
    `shows`.`title` LIKE '% <?> %';
+---------+-----------------+
| show_id |           title |
+---------+-----------------+
|       2 | the little bird |
+---------+-----------------+

अनुक्रम आईडी को उसके नाम से प्राप्त करें

इस उदाहरण में, आप अनुक्रम नाम का उपयोग करके अनुक्रम ID प्राप्त कर सकते हैं।

mysql> SELECT
    `sequence`.`id`,
    `sequence`.`description`
FROM
    `sequence`
WHERE
    `sequence`.`description` LIKE '% <?> %';
+----+-------------+
| id | description |
+----+-------------+
|  2 |     a place |
+----+-------------+

पैनल एसेट्स के लिए फ़ाइल पथ खोजें

इस उदाहरण में, आप किसी विशेष परिसंपत्ति के लिए संग्रहण डिवाइस पर फ़ाइल पथ पा सकते हैं।

mysql> SELECT
    `vPanel_asset_ref`.`panel_id` AS PanelID,
    `vPanel_asset_ref`.`vPanel_id` AS PanelRevision,
    `media_object`.`ref` AS Ref,
    CONCAT('<asset_dir>/', `media_object`.`id`, '_', `media_object`.`filename`) AS FilePath
FROM
    `media_object`
LEFT JOIN
    `asset` ON `asset`.`asset_id` = `media_object`.`asset_id`
LEFT JOIN
    `vPanel_asset_ref` ON `vPanel_asset_ref`.`asset_id` = `asset`.`asset_id`
WHERE
    `vPanel_asset_ref`.`show_id` = <?> and
    `vPanel_asset_ref`.`sequence_id` = <?> and
    `vPanel_asset_ref`.`panel_id` = <?> ;
+---------+---------------+-----------+------------------------------+
| PanelID | PanelRevision |       Ref |                     FilePath |
+---------+---------------+-----------+------------------------------+
|       1 |             1 |   artwork | <asset_dir>/3_test.0491.jpeg |
|       1 |             1 | thumbnail | <asset_dir>/16_079043250.png |
|       1 |             1 |    scaled | <asset_dir>/20_019628328.png |
|       1 |             1 |   fullres | <asset_dir>/25_552125904.png |
+---------+---------------+-----------+------------------------------+

उपयोगकर्ताओं की सूची प्रदर्शित करें (सिस्टम उपयोगकर्ता को छोड़कर)

इस उदाहरण में, आप उन उपयोगकर्ताओं की सूची प्राप्त कर सकते हैं जो Flix उपयोग कर सकते हैं। यदि आप LDAP या OAuth प्रमाणीकरण का उपयोग कर रहे हैं, तो Flix तक पहुँच रखने वाले लोगों की सूची पूरी नहीं हो सकती है। इस स्थिति में, आपको उन उपयोगकर्ताओं की सूची मिलेगी जिन्होंने पहले Flix में साइन इन किया है।

mysql> SELECT
    `user`.`id`,
    `user`.`username`,
    `user`.`is_admin`,
    `user`.`type`,
    `user`.`email`,
    `user`.`deleted`
FROM
    `user`
WHERE
    `user`.`is_system` = 0;
+----+----------+----------+------+------------------------+---------+
| id | username | is_admin | type |                  email | deleted |
+----+----------+----------+------+------------------------+---------+
|  1 |    admin |        1 | flix | flix -admin@foundry.com |       0 |
+----+----------+----------+------+------------------------+---------+

किसी विशेष फ़ाइल नाम का उपयोग करने वाले पैनल आईडी खोजें

इस उदाहरण में, आप जान सकते हैं कि किसी विशिष्ट फ़ाइल के लिए पैनल आईडी क्या है।

mysql> SELECT
    `shows`.`title` AS ShowTitle,
    `sequence`.`description` AS SequenceTitle,
    `panel`.`panel_id` AS PanelID
FROM
    `media_object`
LEFT JOIN
    `asset` ON `asset`.`asset_id` = `media_object`.`asset_id`
LEFT JOIN
    `shows` ON `shows`.`show_id` = `asset`.`show_id`
LEFT JOIN
    `vPanel_asset_ref` ON `vPanel_asset_ref`.`asset_id` = `asset`.`asset_id`
LEFT JOIN
    `vPanel` ON `vPanel`.`show_id` = `vPanel_asset_ref`.`show_id` AND
    `vPanel`.`sequence_id` = `vPanel_asset_ref`.`sequence_id` AND
    `vPanel`.`panel_id` = `vPanel_asset_ref`.`panel_id`
LEFT JOIN
    `sequence` ON `sequence`.`id` = `vPanel`.`sequence_id` AND
    `sequence`.`id` = `vPanel`.`sequence_id`
LEFT JOIN
    `panel` ON `panel`.`panel_id` = `vPanel`.`panel_id`
WHERE
    `media_object`.`id` = SUBSTRING_INDEX(' <?> ', '_', 1) AND
    `media_object`.`filename` = SUBSTRING_INDEX(' <?> ', '_', -1)
GROUP BY
    ShowTitle, SequenceTitle, PanelID;
+------------+---------------+---------+
|  ShowTitle | SequenceTitle | PanelID |
+------------+---------------+---------+
|      show1 |     seq_qwery |       1 |
| other show |          asdf |       1 |
+------------+---------------+---------+

मानव-पठनीय सर्वर सूची प्राप्त करें

इस उदाहरण में, आप सभी Flix सर्वरों की सूची प्राप्त कर सकते हैं। यह Flix क्लाइंट में प्रबंधन कंसोल -> सर्वर के अंतर्गत भी उपलब्ध है।

mysql> SELECT
    HEX(`server`.`server_id`) AS serverIdent,
    INET_NTOA(`server`.`host_ip`) AS IP,
    `server`.`port`,
    `server`.`rpc_port`,
    `server`.`running`,
    `server`.`start_date`,
    `server`.`hostname`
FROM
    `server`;
+----------------------------------+--------------+------+----------+---------+---------------------+-----------------+
|                      serverIdent |           IP | port | rpc_port | running |          start_date |        hostname |
+----------------------------------+--------------+------+----------+---------+---------------------+-----------------+
| F22A1072B6754BCDB78477EDCD81F8FD | 192.168.1.67 | 8080 |     9876 |       1 | 2021-02-01 13:18:29 | flx.foundry.com |
+----------------------------------+--------------+------+----------+---------+---------------------+-----------------+

पैनल आईडी के लिए Flix 5 मेटाडेटा खोजें

इस उदाहरण में, आप देख सकते हैं कि Flix 5 से माइग्रेट किए गए पैनल के लिए Flix कौन सा डेटा रख रहा है

mysql> SELECT
    `vpanel`.`panel_id`,
    `vpanel`.`data`
FROM
    `vpanel`
WHERE
    `show_id` = <?> AND
    `sequence_id` = <?> AND
    `vpanel`.`panel_id` = <?> ;
+----------+----------------------------------------------------------+
| panel_id |                                                     data |
+----------+----------------------------------------------------------+
|        1 |    {"flix5_panel_id": "31", "flix5_panel_revision": "1"} |
|        1 |    {"flix5_panel_id": "31", "flix5_panel_revision": "2"} |
|        1 |    {"flix5_panel_id": "31", "flix5_panel_revision": "3"} |
+----------+----------------------------------------------------------+

Flix 5 मेटाडेटा से पैनल संशोधन खोजें

यह खोज तब उपयोगी होती है जब आप Flix 5 पैनल का Flix प्रतिरूप खोजना चाहते हैं

mysql> SELECT
    `vPanel`.`show_id`,
    `vPanel`.`sequence_id`,
    `vPanel`.`panel_id`,
    `vPanel`.`panel_revision`
FROM
    `vPanel`
JOIN
    `sequence` ON `sequence`.`id` = `vPanel`.`sequence_id`
WHERE
    `vPanel`.`data`->"$.flix5_panel_id" = " <?> " AND    
`vPanel`.`data`->"$.flix5_panel_revision" = " <?> " AND
`sequence`.`tracking_code` = " <?> ";
+---------+-------------+----------+----------------+
| show_id | sequence_id | panel_id | panel_revision |
+---------+-------------+----------+----------------+
|        7|          97 |      236 |              1 |
+---------+-------------+----------+----------------+

अग्रिम पठन

यदि यह वह नहीं है जिसे आप खोज रहे थे, और जानना चाहते थे कि MySQL कैसे स्थापित करें, तो आप नीचे दिए गए लेख को देख सकते हैं:
Q100551: Red Hat/CentOS 7 या Rocky 9 पर MySQL 8 स्थापित करना

यदि इसके बजाय, आप Flix डेटाबेस डेटा का बैकअप/पुनर्स्थापना करने के लिए सर्वोत्तम अभ्यास खोजने का प्रयास कर रहे थे, तो कृपया नीचे दिए गए दो लेख देखें:


आप निम्नलिखित लेख से शो_आईडी और अनुक्रम_आईडी प्राप्त करना सीख सकते हैं:
Q100619: Flix क्लाइंट से show_id और/या sequence_id कैसे प्राप्त करें?


अंत में, Flix सबसे कुशल तरीके से कैसे सेट अप करें, इस पर सुझावों के लिए आप यह लेख पढ़ सकते हैं:
Q100593: इष्टतम Flix सर्वर सेटअप

    हम चाहते हैं कि खेद व्यक्त करते हैं

    कृपया हमें बताएँ कि