JMDB - Java Movie Database V1.x versions http://www.jmdb.de/ [LAST UPDATE: 2010-04-06] Please send bug reports and suggestions to: report 'at' jmdb.de! You may also want to look into the community board (see JMDB website). 1. Introduction 2. What you need 3. Where to get the files 4. Installation of other used programs 5. Installation and starting JMDB 6. Using JMDB 7. Contacting the autors 8. Disclaimer ************************************************************ ********** 1. Introduction ********** ************************************************************ First of all: We are NOT IMDb! We don't have any connection to IMDb. JMDB (or "Java Movie Database") is the name of our own program that only USES data files from IMDb. Java Movie Database is a Java based application for searching and getting information about movies, actors and all that has to do with these. The information is nearly (some files are not processed) the same as you can get when using the IMDb web page at http://www.imdb.com/. The difference is that JMDB is an alternative form of navigating through this information, is able to run on a stand-alone PC just as in a network environment. Another advantage is that you can write your own programs to use the same locally installed database you have after running JMDB (but keep the copyright (READ "COPYIMDB.TXT") from IMDb in mind). License ======= You may, without charge, royalty, or other payment, copy and distribute copies of this program and derivative works of this work in source or binary form provided. that: (1) you appropriately publish on each copy an appropriate copyright notice; (2) faithfully reproduce all prior copyright included in the original work; and (3) agree to indemnify and hold all prior authors, copyright holders and licensors of the work harmless from and against all damages arising from use of or the inability to use the work. Copyright ========= The Java Movie Database (JMDB) is copyrighted by the authors of the program. We release the source code later to the public, if it's ready to do so. All other parts are under protection by the copyrights of the owners of that parts. Please note that the Internet Movie Lists and the database files, which are generated by the Java Movie Database, are protected by the Internet Movie Database (IMDb) copying policy. This policy can be found in the file "COPYIMDB.TXT"; also any Internet Movie List contains a copy of this policy. Among other restrictions, the policy prohibits the CD-ROM distribution of the Internet Movie Lists or the database files created by the Java Movie Database Warranty ======== EXCEPT AS OTHERWISE RESTRICTED BY LAW, THIS WORK IS PROVIDED WITHOUT ANY EXPRESSED OR IMPLIED WARRANTIES OF ANY KIND, INCLUDING BUT NOT LIMITED TO, ANY IMPLIED WARRANTIES OF FITNESS FOR A PARTICULAR PURPOSE, MERCHANTABILITY OR TITLE. EXCEPT AS OTHERWISE PROVIDED BY LAW, NO AUTHOR, COPYRIGHT HOLDER OR LICENSOR SHALL BE LIABLE TO YOU FOR DAMAGES OF ANY KIND, EVEN IF THEY HAVE BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. ************************************************************ ********** 2. What you need ********** ************************************************************ 1. this package or alternatively a newer one ;) 2. the database MySQL 3.23.xx or newer 3. a Java 1.3 runtime library (JRE 1.3) or newer 4. a Java JDBC driver (from MySQL AB) for the connection to MySQL (Version 3.x.x is currently NOT supported - so get V2.x.x) The driver is normally included in the JMDB package, but you may want to update, if there is a newer driver available. 5. the IMDb text files 6. one or more computers capable of running the above As you can see, you basically must be able to run MySQL and Java. This means that you can run it on most platforms, including Windows, Linux, any Unix, OS/2 (incl. eCS). ************************************************************ ********** 3. Where to get the files ********** ************************************************************ 3.1 JAVA MOVIE DATABASE: ------------------------ You can download JMDB and get information about it at: http://www.jmdb.de/. 3.2 DATABASE: ------------- JMDB does support MySQL and also the PostgreSQL database using it's own abstraction layer. -> MySQL MySQL can be downloaded from: http://www.mysql.com/ (click on "Downloads (GA)" and then "MySQL Community Server" to get to the free one). Note for OS/2 users: -------------------- For the latest OS/2 versions of PostgreSQL you can alternativly check out Paul Smedley's website (OS2Ports of Unix Applications) or hobbes): http://os2ports.smedley.info/ -> PostgreSQL PostgreSQL can be downloaded from: http://www.postgresql.org/ Note for OS/2 users: -------------------- For the latest OS/2 versions of PostgreSQL you can alternativly check out Paul Smedley's website (OS2Ports of Unix Applications) or hobbes): http://os2ports.smedley.info/ or (for older ports) http://hobbes.nmsu.edu/h-search.php?key=postgres 3.3 JDBC DRIVER: ---------------- JMDB comes with tested JDBC drivers for all supported databases so you normally don't have to upgrade them and can normally skip this section. If you want to download newer drivers you can do it but we don't support this. -> MySQL JDBC drivers The V5.x.x drivers are supported! You can get the latest (V3.x.x/V5.x.x) MySQL JDBC Driver (Type 4) called Connector/J from MySQL AB at: http://www.mysql.com/downloads/connector/j/ or http://dev.mysql.com/downloads/connector/j/ -> PostgreSQL JDBC drivers The PostgreSQL driver for PostgreSQL 8.x has been rewritten. After the changes applied to JMDB version 1.40 it's finally possible to use the latest drivers again. If you still want to try newer drivers than shipped with the application you can get them here: http://jdbc.postgresql.org/ 3.4 JAVA RUNTIME: ----------------- A Java runtime can be downloaded at: http://java.sun.com/javase/downloads/ http://www.ibm.com/developerworks/java/ http://www.goldencode.com/ and others Note for OS/2 and eCS users: ---------------------------- A Java/JRE 1.4.x and later is available from Golden Code Development (http://www.goldencode.com/). Java from Innotek GmbH is now only available through eComStation as Innotek GmbH was bought by Sun which was finally bought by Oracle. The difference between GoldenCode Java and Innotek Java: - Golden Code has developed a native Java for OS/2 and eCS Plus.: Native and fast application environment Minus: Other errors than the Windows Java version No updates since a long time. You have to pay for it...but it's native - Innotek uses the Windows Java package and uses Odin technology to make it work under OS/2 and eCS Plus.: It has the same bugs as the Windows version ;) Minus: Maybe the bad taste no beeing a native version. Speed: Is a little bit slower but not really noticeable No updates since a long time. The latest one is even not linked on their website (links follow). --> Java v1.4.2_09 JRE: http://download.innotek.de/javaos2/142_09/install.exe --> Java v1.4.2_09 JDK (includes JRE): http://download.innotek.de/javaos2/142_09/install_sdk.exe Note: Some made a Java 1.5.0_XX release working on OS/2 and eCS! The IBM OS/2 JRE 1.3(.1) is not free but is shipped with eComStation. You have to subscribe to IBM Software Choice which offers you more than just the JRE or you can buy the eComStation (short eCS) from Serenity Systems/Mensys NL. The eComStation is a basic OS/2 Warp(Server) with included JRE 1.3 and Innotek Java 1.4.2! eComStation........: http://www.ecomstation.com/ http://www.mensys.nl/ or http://www.serenity-systems.com/ IBM Software Choice: http://service.software.ibm.com/asd-bin/doc/index.htm 3.5 INTERNET MOVIE DATABASE: ---------------------------- The Internet Movie Database (IMDb) is reachable at: http://www.imdb.com You can find an Internet Movie Database (IMDb) FAQ at: http://www.imdb.com/help/ The FTP sites for the text files are listed here: http://www.imdb.com/interfaces You can alternativly click at "Index" (at the bottom of the main) and "Interfaces" when you are at the main page of IMDb. The text files you must have before running JMDB are at one of the following sites: ftp://ftp.fu-berlin.de/pub/misc/movies/database/ ftp://ftp.funet.fi/pub/mirrors/ftp.imdb.com/pub/ ftp://ftp.sunet.se/pub/tv+movies/imdb/ The IMDb FTP server is no longer available (ftp://ftp.imdb.com/pub/interfaces/). You can use the following ascii text files at the moment for JMDB. They are compressed in tar-GNUZip format (.tgz) when you download them but you DON'T have to decompress them, because JMDB does it automatically: actors.list actresses.list aka-names.list aka-titles.list alternate-versions.list (since v1.40) biographies.list business.list certificates.list cinematographers.list color-info.list composers.list costume-designers.list countries.list crazy-credits.list (since v1.40) directors.list distributors.list editors.list genres.list german-aka-titles.list (outdated and shouldn't be used - last update May 2005 - using this file causes errors written to IMDb_Error.log) goofs.list italian-aka-titles.list (outdated and shouldn't be used - last update Dec. 2000 - using this file causes errors written to IMDb_Error.log) keywords.list language.list literature.list (since v1.40) locations.list (since v1.40) miscellaneous.list movies-links.list movies.list ( -- required -- ) mpaa-ratings-reasons.list plot.list producers.list production-companies.list production-designers.list quotes.list ratings.list release-dates.list running-times.list taglines.list technical.list trivia.list writers.list ************************************************************ ********** 4. Installation of other used programs ********** ************************************************************ 4.1a MySQL: ---------- Install MySQL as described in the documentation of MySQL. Then you (may) have to add the correct user rights so that the user that will run JMDB has the privileges to connect to the database. NOTE: You only have to change this if you DON'T run MySQL on the same machine as JMDB. If you run both on the same computer normally you don't have to change the user/access settings at all. Just use the defaults: User: root Password: root (or no password at all) WARNING: There may be changes due to newer releases so it's always a good idea to check the table structure! Newer versions of MySQL will most likely need updated INSERT-Statements. Within the console you can type the following lines to show the current table structure: use mysql; describe user; To insert new rights try this command from a MySQL 3.23 client running as root: Insert into user (Host, User, Password, Select_priv, Insert_priv, Update_priv, Delete_priv, Create_priv, Drop_priv, Reload_priv, Shutdown_priv, Process_priv, File_priv, Grant_priv, References_priv, Index_priv, Alter_priv) values("%","username",PASSWORD("password"),"Y", "Y","Y","Y","Y","Y","Y","Y","Y","Y","Y","Y","Y","Y"); MySQL 5.0 needs this line: INSERT INTO `user` VALUES ('%','username',PASSWORD('password'),'Y', 'Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y', 'Y','Y','Y','Y','Y','Y','Y','Y','','','','',0,0,0,0); You have to replace 'USERNAME' and 'PASSWORD' with the correct values. 4.1b PostgreSQL: ---------------- Just follow the normal PostgreSQL installation. If you want to access the database from another computer follow the information you can find in the PostgreSQL documentation. 4.2 Java Runtime: ----------------- Install it so that you can run java with the command "java" from the command line. 4.3 IMDb text files: -------------------- Download all files (*.gz) into one directory. You can decompress them (*.list), but this is NOT needed. JMDB can read the compressed files directly! 4.3a - Windows users can use WinZip to extract the files. 4.3b - OS/2 users have to get GZIP.EXE V1.2.4 (18. Aug 1993) from hobbes ("http://hobbes.nmsu.edu/h-search.php?key=gz124_16.zip") Attention: ---------- When using GZIP with "-d" parameter to uncompress, GZIP automatically deletes the source file. ************************************************************ ********** 5. Installation and starting JMDB ********** ************************************************************ BASIC INSTALL DESCRIPTION: -------------------------- - Decompress all the IMDb data files (*.list) into one directory or import the compressed *.list.gz files. Both works without problems! The import is NOT faster when you extract the files! - Install JMDB with using the Install Package or decompress all the files of the JMDB zip file into one directory, for example /usr/local/bin/jmdb (Unix) or C:\JMDB (OS/2 or Windows). - To continue you have to start the MySQL Server (MYSQLD.EXE) JMDB needs a connetion to the installed database. The MySQL Server should be running before you start JMDB!!! - Start JMDB. Windows user..: After installation, wou'll find an icon on your desktop and a new Group in the Start Menu. If you have not used the Installer, run startwin.bat or startwindebug.bat in the JMDB directory. OS/2 user.....: Run instos2.cmd: It can create WPS Objects for JMDB and can also create the files named "startos2.cmd" and "startos2debug.cmd", which you can run. Run startos2.cmd or startos2debug.cmd alternatively after editing. If you used WarpIN, it should have automatically created the desktop icons and startup scripts Linux/Mac user: Run startlinux shell script to start JMDB. Desktop icons for Windows and OS/2 can be found in the graphics subdirectory. - The first thing you have to do is to set the correct paths and user information in the "File" -> "Setup" window. If there is no CFG available, this dialog is automatically shown. OS/2 and Windows users running MySQL/PostgreSQL and JMDB on the same computer (as localhost) can remove the password from the "DB Setup" pageframe! You can test if the connection works by selecting the "Test Connection" button. MySQL default user.....: root PostgreSQL default user: postgres --> Several Linux distributions may use other default users and passwords!!! - When you have setup JMDB and you have a working MySQL Server running you have to convert the IMDb text files into a MySQL database. Use "File" -> "Create Database" for this. This will take SEVERAL HOURS and only has to be done once! So start this at night, when you don't use you PC or you don't need the full power of it. NOTE: Even on a fast AMD Athlon 2500+ (1.8 GHz) it takes 2.5 hours to convert all IMDb list files (MySQL 3.23, other may even need longer). - You can also "CANCEL" the converter and restart the converter later! It will resume at the last file you where converting. - When database conversion is finished, you can use the database. Try a "File" -> "New Search" for example. The IMDb text files are not used any more, so you can delete them from your harddisk to save space (~400 MB for the compressed files). - About ~1200 MB+ is needed for the database (MySQL 3.23.58 MyISAM Engine), MySQL 5.0.x uses 2600 MB+ (InnoDB Engine) OS/2 INSTALL DESCRIPTION: ------------------------- There are two ways to install JMDB (*.WPI/EXE and *.ZIP). a) If you have installed WarpIN (the ulimative OS/2 software installer), you should get the JMDB*.WPI archive. All you have to do is double click onto this archive. After that you can follow the steps shown on screen. There's also a version available with the WarpIn Installer included. b) When you have got the *.ZIP archive, you have to create a directory, where you want to install JMDB. Move the file to that directory and unzip the file: UNZIP JMDB*.ZIP or PKUNZIP2 -d JMDB*.ZIP // '-d' is needed to create the directory structure stored in .ZIP file When you have unzipped the JMDB*.ZIP file, you can start the file INSTOS2.CMD. It searches for an installed Java Runtime Environment 1.3(.1) (JRE 1.3(.1)), the DB driver in current directory creates a WPS Folder named "Java Movie Database" which contains some program objects. It also creates the file STARTOS2.CMD and STARTOS2DEBUG.CMD For the rest have a look at the BASIC INSTALL DESCRIPTION. ************************************************************ ********** 6. Using JMDB ********** ************************************************************ We hope you discover the functionality of JMDB by simply using it. Most windows have a "Help" button. All you have to know when USING the program is in that help file, which you can alternatively read with any html-Browser. The file is located in the "doc"-Directory. ************************************************************ ********** 7. Contacting the autors ********** ************************************************************ The autors of this software are: Juergen Ulbts : data import/export, resume mode, querys, table design, program design, multi-language support, all extensions since 2003 as well as OS/2 support (testing, development, install scripts) Uwe Freese : program design, layout and creator of most things that have nothing to do with SQL and the database itself, webpage, testing MySQL on a linux machine If you have bug reports or suggestions for future releases, look at the JMDB site for contacting us: http://www.jmdb.de/ ************************************************************ ********** 8. Disclaimer ********** ************************************************************ Many thanks go to the following people: --------------------------------------- Many thanks go to our beta testers for giving hints and making suggestions. Sergi Tur Badenas - Spanish translation Olof Hjalmarsson and - Swedish translation Johnny Johannesson Vladimir Frelikh - Russian translation Marko Bastovanovic - Bugreports and also the Serbian translation Roland Bouwmans - Dutch translation Jean-Claude Vignoli - French translation, bugreport and testing Vittorio Monaco - Italian translation Marco Turci - Bugreports and MySQL 4/5 performance improvement suggestions James Nicolson - For his initial .app bundle package for Mac OS X Kai Schulte - For his tests of the .app bundle on his MacBook after lunch at the cafeteria of the university. :) Many thanks also for showing me the Growl package! I'll include support ASAP. Jan Weiss - For his updates on the linux start script and his tests of the Mac OS X .app bundle. Holger Cremer - For his tests to get Derby (aka Java DB) and SQLite working. Delfi Reinoso - Suggestions, bugreports and testing Vittorio Monaco - Italian translation Christian Hennecke - For your time as alpha and betatester. Paul Smedley - Thank you for taking the time to port all those cool apps to eComStation (eCS) and OS/2, like MySQL, PostgreSQL and all the other applicatons. Yuri Dario - Thank you for porting the older MySQL version to eComStation (OS/2)! Lorne Sunley - Thank you for porting the older PostgreSQL version to eComStation (OS/2)! Mark Matthew - Thank you for the Java MySQL-JDBC driver! Thorsten Thielen - Many thanks to you and the german TeamOS/2 groups Ulrich Moeller, Paul Ratcliffe,.. - Thank you for WarpIN (eCS & OS/2 Installer) and XWorkplace plus fixes to both projects! Bruno Lowagie and Paulo Soares - Thank you for the free Java iText PDF library! http://www.lowagie.com/iText/ The library is used to export the details of persons and movies into a PDF file! Linus Torwald - Thank you for Linux! ============================================================ *** Then many thanks to all other individuals we forgot! *** ============================================================ Many thanks go to the following companies/groups: ------------------------------------------------- IMDb - Many thanks to all people working for the 'Internet Movie Database'! Without your effort in collecting information about the movie industry and providing the information as text files, our program wouldn't exist. MySQL AB - Thank you for developing MySQL! PostgreSQL.org - Thank you to the PostgreSQL community! Sun Microsystems - Thank you for developing JAVA and providing us with the JDK and JREs! IBM Corporation - Thank you for the JDK, the JRE, Visual Age for Java! Please continue the development of Visual Age for Java (especially the OS/2 version). Then "buy" some marketing guys from Microsoft, so you can sell your good products (OS/2; Visual Age Series) instead of placing it in the darkest room you can find in the Austin headquarter. I hope the guys from Serenity Systems will make a better marketing job, so eCS (OS/2) will be a success. Many thanks you allow Serenity Systems to sell OS/2 as eComStation (eCS). Serenity Systems/ Mensys NL - Many thanks for eComStation OS2.ORG & TeamOS/2- Thank you for all the news Golden Code Dev. - Thanks for the OS/2 Java 1.4.x package Innotek GmbH - Thanks for the free OS/2 Java 1.4.x package ================================================================= *** Then many thanks to all other companies/groups we forgot! *** ================================================================= TRADEMARKS: ----------- IMDb is a trademark of the Internet Movie Database Java is a trademark of Sun Microsystems. Windows is a trademark of Microsoft Corporation. OS/2 is a trademark of IBM Corporation. eComStation and eCS is a trademark of Serenity Systems.