|
|
Line 50: |
Line 50: |
| | [[displayprofiles table|displayprofiles]]|||||||||| | | | [[displayprofiles table|displayprofiles]]|||||||||| |
| |- | | |- |
− | | [[dtv_multiplex table|dtv_multiplex]]||Information needed to tue to a particular frequency on a particular input||[http://code.mythtv.org/doxygen/group__db__schema.html#dtv_multiplex_table]||24||mplexid*,sourceid,transportid,networkid||frequency, polarity, modulation | + | | [[dtv_multiplex table|dtv_multiplex]]||Information needed to tune to a particular frequency on a particular input||[http://code.mythtv.org/doxygen/group__db__schema.html#dtv_multiplex_table]||24||mplexid*,sourceid,transportid,networkid||frequency, polarity, modulation |
| |- | | |- |
| | [[dtv_privatetypes table|dtv_privatetypes]]||Free form data pertaining to DVB services, it is like a settings table for DVB.||[http://code.mythtv.org/doxygen/group__db__schema.html#dtv_privatetypes_table]||4||networkid||sitype,private_type,private_value | | | [[dtv_privatetypes table|dtv_privatetypes]]||Free form data pertaining to DVB services, it is like a settings table for DVB.||[http://code.mythtv.org/doxygen/group__db__schema.html#dtv_privatetypes_table]||4||networkid||sitype,private_type,private_value |
Revision as of 12:38, 14 February 2013
MythTV uses a MySQL relational database to manage almost all aspects of configuration and day-to-day operation. Mythfrontend, mythbackend, mythfilldatabase, MythTV plugins and ancillary programs all interact with the database and use it to store settings and information.
By default, the database is named mythconverg and contains a set of tables that interact with one-another. When running multiple frontends and/or backends, only one database is required.
Database tables
In 0.26 there are 108 tables in the database. The incomplete schema below gives some information about what each table is for and some of the key fields.
Information on the 0.27 database schema generated by Doxygen is available here on the MythTV code development site.
Table name
|
Purpose
|
Doxygen docs
|
Fields
|
Key relationship fields
|
Other notable fields
|
archiveitems |
|
|
|
|
|
callsignnetworkmap |
|
|
|
|
|
capturecard |
Attributes of capture card |
[1] |
26 |
cardid*,diseqid |
videodevice,audiodevice,cardtype
|
cardinput |
|
|
|
|
|
channel |
|
[2] |
28 |
channelid*, freqid, sourceid, xmltvid, mplexid, iptvid |
name, channelnum, icon, recpriority, contrast
|
channelgroup |
|
|
3 |
id*, chanid, grpid |
|
channelgroupnames |
|
|
2 |
grpid* |
|
channelscan |
|
|
5 |
scanid*,cardid,sourceid |
processed, scandate
|
channelscan_channel |
|
|
38 |
transportid,scanid,mplex_id,source_id,service_id, xmltvid |
freqid, service_name, chan_num
|
channelscan_dtv_multiplex |
|
|
|
|
|
codecparams |
|
|
|
|
|
credits |
|
|
|
|
|
customexample |
|
|
|
|
|
diseqc_config |
|
|
|
|
|
diseqc_tree |
|
|
|
|
|
displayprofilegroups |
|
|
|
|
|
displayprofiles |
|
|
|
|
|
dtv_multiplex |
Information needed to tune to a particular frequency on a particular input |
[3] |
24 |
mplexid*,sourceid,transportid,networkid |
frequency, polarity, modulation
|
dtv_privatetypes |
Free form data pertaining to DVB services, it is like a settings table for DVB. |
[4] |
4 |
networkid |
sitype,private_type,private_value
|
dvdbookmark |
|
|
|
|
|
dvdinput |
|
|
|
|
|
dvdtranscode |
|
|
|
|
|
eit_cache |
|
|
|
|
|
filemarkup |
|
|
|
|
|
gallerymetadata |
|
|
|
|
|
gamemetadata |
|
|
|
|
|
gameplayers |
|
|
|
|
|
housekeeping |
|
|
|
|
|
inputgroup |
|
|
|
|
|
internetcontent |
|
|
|
|
|
internetcontentarticles |
|
|
|
|
|
inuseprograms |
|
|
|
|
|
iptv_channel |
|
|
|
|
|
jobqueue |
|
|
|
|
|
jumppoints |
|
|
|
|
|
keybindings |
|
|
|
|
|
keyword |
|
|
|
|
|
livestream |
|
|
|
|
|
logging |
|
|
|
|
|
movies_movies |
|
|
|
|
|
movies_showtimes |
|
|
|
|
|
movies_theaters |
|
|
|
|
|
music_albumart |
|
|
|
|
|
music_albums |
|
|
|
|
|
music_artists |
|
|
|
|
|
music_directories |
|
|
|
|
|
music_genres |
|
|
|
|
|
music_playlists |
|
|
|
|
|
music_smartplaylists |
|
|
|
|
|
music_smartplaylist_categories |
|
|
|
|
|
music_smartplaylist_items |
|
|
|
|
|
music_songs |
|
|
|
|
|
music_stats |
|
|
|
|
|
mythlog |
|
|
|
|
|
networkiconmap |
|
|
|
|
|
newssites |
|
|
|
|
|
oldfind |
|
[5] |
|
|
|
oldprogram |
|
|
|
|
|
oldrecorded |
|
[6] |
|
|
|
people |
|
|
|
|
|
phonecallhistory |
|
|
|
|
|
phonedirectory |
|
|
|
|
|
pidcache |
|
|
|
|
|
playgroup |
|
|
|
|
|
powerpriority |
|
|
|
|
|
profilegroups |
|
|
|
|
|
program |
|
[7] |
|
|
|
programgenres |
|
|
|
|
|
programrating |
|
|
|
|
|
recgrouppassword |
|
|
|
|
|
record |
|
|
|
|
|
recorded |
|
[8] |
|
|
|
recordedartwork |
|
|
|
|
|
recordedcredits |
|
|
|
|
|
recordedfile |
|
|
|
|
|
recordedmarkup |
|
|
|
|
|
recordedprogram |
|
|
|
|
|
recordedrating |
|
|
|
|
|
recordedseek |
|
|
|
|
|
recordfilter |
|
|
|
|
|
recordingprofiles |
|
|
|
|
|
recordmatch |
|
|
|
|
|
romdb |
|
|
|
|
|
scannerfile |
|
|
|
|
|
scannerpath |
|
|
|
|
|
schemalock |
|
|
|
|
|
settings |
|
|
|
|
|
storagegroup |
|
|
|
|
|
tvchain |
|
|
|
|
|
tvosdmenu |
|
|
|
|
|
upnpmedia |
|
|
|
|
|
videocast |
|
|
|
|
|
videocategory |
|
|
|
|
|
videocollection |
|
|
|
|
|
videocountry |
|
|
|
|
|
videogenre |
|
|
|
|
|
videometadata |
|
|
|
|
|
videometadatacast |
|
|
|
|
|
videometadatacountry |
|
|
|
|
|
videometadatagenre |
|
|
|
|
|
videopart |
|
|
|
|
|
videopathinfo |
|
|
|
|
|
videosource |
This table tells us about a particular input on a video capture card. |
[9] |
|
|
|
videotypes |
|
|
|
|
|
weatherdatalayout |
|
|
|
|
|
weatherscreens |
|
|
|
|
|
weathersourcesettings |
|
|
|
|
|
websites |
|
|
|
|
|
Command line interface
Use the mysql
command on the host running the database:
% mysql -u mythtv -pmythtv mythconverg
SQL commands can be issued at the mysql> prompt.
Graphical interface
Try installing phpMyAdmin, which can administrate MySQL databases via a browser.