OS/2, eCS & ArcaOS - Technical > Applications

Database solution for os/2

(1/1)

Devid:
Hi to all.
I searched for dbexpert but I discovered that is no longer available...
So I would like to propose to the community a database solution that I use daily: nubuilder.
It's a web client/server application based on Mysql/Javascript/Php. The homepage of the project (open source!) is nubuilder.net.
The last version il NuBuilderForte v. 4, and is based on php 7 so does not work on os/2. But having used it from version 2 I've kept the source of the version 3 (nubuilderpro) that works pretty well on os/2.
Here the instruction for install & start using it.
First of all I downloaded mysql 5.1.72, apache 2.2.34 and php 5.4.45 from Paul Smedley site: https://os2ports.smedley.id.au/
I've installed these programs in my "c:\apps\" directory (c:\apps\apache2, c:\apps\mysql51; c:\apps\php5).
Then I copied "modphp5.dll" in the c:\\apps\apache2\modules and php.ini in c:\mptn\etc directory.
For apache2 configuration I change c:\apps\apache2\conf\httpd.conf for my purpose.
For mysql I copy and edited the my.cnf file in the c:\etc directory.
(At the end of the post there are my conf files and the useful web link)
These are the minimal changes necessary for a proper apache/php/mysql use:
For apache:

--- Code: --- --> ServerRoot "/apps/apache2"
--> LoadModule php5_module modules/modphp5.dll
--> DocumentRoot "/apps/apache2/htdocs"
--> <Directory "/apps/apache2/htdocs">
--> DirectoryIndex index.html index.php
--> AddType application/x-httpd-php .php
--> #LoadModule authn_core_module modules/authn_co.dll
--> #LoadModule authz_core_module modules/authz_co.dll
--> #LoadModule access_compat_module modules/access_c.dll
--> Order allow,deny
--> Allow from all

--- End code ---

For mysql:
Follow the smedley readme.os2 instruction then open a shell command:

--- Code: ---cd \apps\mysql51\bin
mysqld

--- End code ---
Open another shell and:

--- Code: ---cd \apps\mysql51\bin
mysql -u root -p
ALTER USER 'root'@'localhost' IDENTIFIED BY '<password>';
CREATE USER '<user>'@'localhost' IDENTIFIED BY '<password>';
GRANT ALL PRIVILEGES ON *.* TO '<user>'@'localhost';
FLUSH PRIVILEGES;

--- End code ---
Where <password> is yours password and <user> is a user name.
For some reason my mysql installation refuse to start and I have to insert always inside the mysql client:

--- Code: ---use mysql;
DROP TABLE servers;
CREATE TABLE `servers` (
`Server_name` char(64) NOT NULL,
`Host` char(64) NOT NULL,
`Db` char(64) NOT NULL,
`Username` char(64) NOT NULL,
`Password` char(64) NOT NULL,
`Port` int(4) DEFAULT NULL,
`Socket` char(64) DEFAULT NULL,
`Wrapper` char(64) NOT NULL,
`Owner` char(64) NOT NULL,
PRIMARY KEY (`Server_name`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT='MySQL Foreign Servers table';
exit

--- End code ---
We login again with the mysql command client but now with <user> account:

--- Code: ---cd c:\apps\mysql51\bin
mysql -u <user> -p
create database <newdb>;
exit

--- End code ---
Where <newdb> is the name of our first database project.
Here arrive the os/2 power: the work area.
I create a folder with two program object inside: one for starting apache server daemon and one for mysql server daemon (see screenshot below). With the Work Area option activate the daemons start automagically whenever I open my databases folder.
And when I finish with my database job closing the folder automagically close also the daemon, so i have not the servers always active.
Some little step and the database system is ready to go...
I have a zip file (newdb.zip) that is the real nubuilder engine (but yet void: below there is also nubuilderprodemo.sql, an example application downloaded some time ago from the nubuilder site). The zip file occupy about 25 MBytes, so i cannot upload such as post attachment. Here Martin can help me saying where I can upload it  ;D.
Unzip newdb.zip inside the c:\apps\apache2\htdocs\ directory and change name with yours project name (c:\apps\apache2\htdocs\<proj_name>)
Inside that directory there is a file called config.php like the following:

--- Code: ---<?php

    $nuConfigDBHost                 = "localhost";
    $nuConfigDBName                 = "newdb";
    $nuConfigDBUser                 = "user";
    $nuConfigDBPassword             = "userpassword";
    $nuConfigDBGlobeadminPassword   = "globeadminpassword";
    $nuConfigtitle                  = "newdb";

?>

--- End code ---
Well, edit it with your data ("newdb" --> proj_name; "user" and "userpassword" --> user name and password created with mysql; "globeadminpassword" --> password of the root user of the project).
Now start firefox and insert the URL:

--- Code: ---localhost/<proj_name>/nuinstall.php
--- End code ---
In the shown page insert the globeadmin (root) password and click on run.
DONE!
From now on you can "connect" to yours database project from "localhost/proj_name" URL.
For a proper use look at https://wiki.nubuilder.net/nubuilderv3 and https://forums.nubuilder.com/
Below screenshot and zip files.
For some reason the "database" button on the globeadmin page does not work so phpmyadmin login page does not open anymore for me. I think is some httpd.conf/php.ini/my.cnf misconfiguration. I have rimedied with adminer (www.adminer.org).
Happy warping!

Devid:
I uploaded the file on dropbox. Here the link: https://www.dropbox.com/s/w6tbe15y2rf5193/NEWDB.zip?dl=1

Devid:
Attached the right php.ini. Now phpmyadmin work inside nubuilder

Paul Smedley:
FWIW - I do have a build of PHP7.3.x available - just not on my public site yet....

Navigation

[0] Message Index

Go to full version