This is an old revision of the document!
System i Support
Mantis support for IBM System i platform (AS/400, iSeries) and DB2.
* Installing MySQL on System i
http://dev.mysql.com/downloads/mysql/5.0.html#downloads
(as of 2007-01-30)
IBM AIX downloads AIX 5.2 (POWER, 64-bit) Standard 5.0.27 28.1M Max 5.0.27 28.1M
Download filename: mysql-max-5.0.27-aix5.2-powerpc-64bit.tar.gz
W:\LIVE\mantis-sql>dir Directory of W:\LIVE\mantis-sql 10/20/2006 21:24 80,732,160 mysql-max-5.0.27-aix5.2-powerpc-64bit.tar W:\LIVE\mantis-sql>ftp -i as400 Connected to AS400. 220-QTCP at 192.168.0.222. 220 Connection will close if idle more than 5 minutes. User (RUBY:(none)): yourUserId 331 Enter password. Password: ********** 230 YOURUSERID logged on. ftp> cd /usr/local 550-NAMEFMT set to 1. 250 "/usr/local" is current directory. ftp> ls 200 PORT subcommand request successful. 125 List started. Zend/ 250 List completed. ftp: 7 bytes received in 0.00Seconds 7000.00Kbytes/sec. ftp> bin 200 Representation type is binary IMAGE. ftp> put *.tar 200 PORT subcommand request successful. 150 Sending file to /usr/local/mysql-max-5.0.27-aix5.2-powerpc-64bit.tar ftp: 80732160 bytes sent in 11.36Seconds 7107.33Kbytes/sec. ftp>quit
On the AS/400 command line, as QSECOFR, issue the following commands (responses not shown):
call qp2term cd /usr/local tar -xvf mysql-max-5.0.27-aix5.2-powerpc-64bit.tar ln -s mysql-max-5.0.27-aix5.2-powerpc-64bit mysql cd /usr/local/mysql scripts/mysql_install_db
Start MySQL
> cd . ; ./bin/mysqld_safe & [1] 128192 # Starting mysqld daemon with databases from /usr/local/mysql/data
Continue with Unix Post Install docs at http://dev.mysql.com/doc/refman/5.0/en/unix-post-installation.html
First, set default priviledges: http://dev.mysql.com/doc/refman/5.0/en/default-privileges.html
> ./bin/mysql -u root Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 1 to server version: 5.0.27-max Type 'help;' or '\h' for help. Type '\c' to clear the buffer. mysql> > SET PASSWORD FOR ''@'localhost' = PASSWORD('secret'); Query OK, 0 rows affected (0.00 sec) mysql> > SELECT Host, User FROM mysql.user; +-------------------+------+ | Host | User | +-------------------+------+ | AS400 | | | AS400 | root | | localhost | | | localhost | root | +-------------------+------+ 4 rows in set (0.01 sec) mysql> > SET PASSWORD FOR ''@'AS400' = PASSWORD('secret'); Query OK, 0 rows affected (0.06 sec) mysql> > UPDATE mysql.user SET Password = PASSWORD('secret') -> WHERE User = ''; Query OK, 0 rows affected (0.07 sec) Rows matched: 2 Changed: 0 Warnings: 0 mysql> > UPDATE mysql.user SET Password = PASSWORD('secret') WHERE User = 'root'; Query OK, 2 rows affected (0.01 sec) Rows matched: 2 Changed: 2 Warnings: 0 mysql> > FLUSH PRIVILEGES; Query OK, 0 rows affected (0.00 sec) mysql>
Optionally remove anonymous access:
mysql> DELETE FROM mysql.user WHERE User = ''; mysql> FLUSH PRIVILEGES;
Validate with:
> ./bin/mysqladmin version -psecret ./bin/mysqladmin Ver 8.41 Distrib 5.0.27, for ibm-aix5.2.0.0 on powerpc Copyright (C) 2000 MySQL AB & MySQL Finland AB & TCX DataKonsult AB This software comes with ABSOLUTELY NO WARRANTY. This is free software, and you are welcome to modify and redistribute it under the GPL license Server version 5.0.27-max Protocol version 10 Connection Localhost via UNIX socket UNIX socket /tmp/mysql.sock Uptime: 37 min 56 sec Threads: 1 Questions: 15 Slow queries: 0 Opens: 12 Flush tables: 2 Open tables: 0 Queries per second avg: 0.007 #
Now edit ZendCore to tell it to use MySQL. We will do this manually by editing the php.ini file. Go to an AS/400 command line and issue the command:
wrklnk '/usr/local/Zend/core/etc'
Place a 5 in the option column at ETC and Press Enter.
Place a 2 in the option column at PHP.INI and Press Enter.
Use the search command:
f =mysql
to find the lines:
;extension=mysql.so ;extension=mysqli.so
It is possible that they are already un-commented (without a leading semicolon). If not, remove the leading semicolon resulting in:
extension=mysql.so extension=mysqli.so
Save with F2 and exit with F3.
Obtain the latest stable version of Mantis from http://sourceforge.net/project/showfiles.php?group_id=14963&package_id=166159 Download the file mantis-1.0.6.tar.gz to a PC folder. Since the file is “GZIPPED”, the easiest thing to do is use WinZip on a Windoze box to unzip (untar) the distribution file.
Unzip gz file to a known folder on your PC. Use a real FTP program like WS-FTP or CuteFTP (free) to transfer the folder and all subfolders and files to a folder on the AS/400. We suggest you place the contents in the default http documents folder in the root file system of the IFS:
/www/zendcore/htdocs/xxx
where xxx is either the default folder name mantis-1.0.6
(ugly to key in) or a more convenient name like mantis
or bugtracker
or issues
. For this example we will use the folder mm
standing for Mantis on MySQL.
Start the install process by using your browser to run the index.php in the root folder of the Mantis software:
http://your_system_ip_or_name:89/mm/index.php
Mantis will automatically detect that it is not yet installed, as this is the same file that is used to run the software also. Provide the userIDs and passwords you configured for MySQL in the previous steps.
The Mantis system uses two configuration files. The default file config_defaults_inc.php is not to be modified. All modifications to the configuration go into config_inc.php, which is read AFTER config_defaults_inc.php, and therefore overrides it. Following are some setting that should be set in config_inc.php, most of them will need to be added:
<?php
# leave these next three the same $g_hostname = 'localhost'; $g_db_type = 'mysql'; $g_database_name = 'bugtracker';
# your database userid goes here $g_db_username = 'root'; # your password goes here $g_db_password = 'secretpassword';
# Used to link to manual for User Documentation. # Updated URL for the Mantis online docs $g_manual_url = 'http://www.mantisbt.org/manual/index.php/';
# String used to generate the confirm_hash for the 'lost password' feature and captcha code for 'signup' # ATTENTION: CHANGE IT TO WHATEVER VALUE YOU PREFER $g_password_confirm_hash_magic_string = 'cornedbeefhash';
# these next two require you to upload the file arial.ttf from your PC to a folder you create # absolute path (with trailing slash!) to folder which contains your TrueType-Font files # used to create the captcha image and since 0.19.3 for the Relationship Graphs $g_system_font_folder = './fonts/'; # font name used to create the captcha image. i.e. arial.ttf # (the font file has to exist in the system_font_folder) $g_font_per_captcha = 'arial.ttf';
# --- email variables ------------- $g_administrator_email = 'ira@curbstone.com'; $g_webmaster_email = 'webmaster@curbstone.com';
# the 'From: ' field in emails $g_from_email = 'noreply@curbstone.com';
# the return address for bounced mail $g_return_path_email = 'ira@curbstone.com';
# allow email notification # note that if this is disabled, sign-up and password reset messages will # not be sent. $g_enable_email_notification = ON;
# --- sitewide variables ---------- $g_window_title = 'Mantis - i5 MySQL'; # browser window title $g_page_title = 'Mantis - i5 MySQL'; # title at top of html page (empty by default, since there is a logo now)
# FTP settings, used if $g_file_upload_method = FTP $g_file_upload_ftp_server = '66.44.200.70'; $g_file_upload_ftp_user = 'readwriteuser'; $g_file_upload_ftp_pass = 'readwritepass';
# Files that are allowed or not allowed. Separate items by commas. # eg. 'php,html,java,exe,pl' # if $g_allowed_files is filled in NO other file types will be allowed. # $g_disallowed_files takes precedence over $g_allowed_files $g_allowed_files = ''; $g_disallowed_files = 'php,pl,java';
# --- cookie prefix --------------- # set this to a unique identifier. No spaces. $g_cookie_prefix = 'MANTISi5MySQL';
?>