xampp 1.7 as .sfs

Stuff that has yet to be sorted into a category.
Message
Author
User avatar
MU
Posts: 13649
Joined: Wed 24 Aug 2005, 16:52
Location: Karlsruhe, Germany
Contact:

xampp 1.7 as .sfs

#1 Post by MU »

I uploaded a sfs of xampp 1.7, it includes Apache, Perl, PHP, MySQL, Proftpd and helper applications like PHPmyAdmin.

Details:
http://www.apachefriends.org/en/xampp-linux.html

Download: from here:
http://puppyisos.org/isos/2009-01-to-06 ... Midi-Maxi/


User: puppy
Password: linux

Just tested it in Newyearspup, but it should work in most Puplets.

All is in /opt/lampp, plus a symlink in /usr/local/bin/.
You can start the servers by typing:
lampp start

Then open in your webbrowser:
http://localhost

The attached screenshot shows PHPmyAdmin, the small window in front of it is a small DB utility I work on written in Java (not included as not finished yet).

It also is included in a special Puppy for Java developers:
http://www.murga-linux.com/puppy/viewto ... 115#283115

Mark
Attachments
xampp.jpg
(58.3 KiB) Downloaded 4733 times
Last edited by MU on Wed 11 Mar 2009, 18:46, edited 2 times in total.
[url=http://murga-linux.com/puppy/viewtopic.php?p=173456#173456]my recommended links[/url]

User avatar
MU
Posts: 13649
Joined: Wed 24 Aug 2005, 16:52
Location: Karlsruhe, Germany
Contact:

#2 Post by MU »

I attach 2 files, a program to run, and a source folder for the Eclipse workspace.

It is a Java program, to manage a database.

The idea is:
there are usually 2 types of grafical database programs.

1.) very specialized ones, like "Amarok". It is a music database, so you cannot manage the adresses of your customers with it.
But it has many usefull options for its purpose - manage music.

2.) the generalized approach, like PHPmyAdmin.
It can manage ANY database.
But this complexity makes it difficult to use for non-experts. It has no special options like Amarok.

So I try to write a tool, that uses a "generalized" approach, so you can create a music database, or manage customers.
But it will be far less complex than PHPmyAdmin.
With this simple tool, your secretary quickly will find or modify the adress of someone, even if she has no experience with databases.

This is developed during a Java course I take.
I develop it "in the free time" between exercises.
So it is not finished, but in some cases might be usefull already.
Do not expect too much in the current state, and do NOT use it on critical data.
It is not tested intensively!

Usage:
Be sure to have a current Java runtime (jre) installed, and xampp.
You do not need a mysql addon for Java, as it is included in this jar.

Install SimpleMysqlJavaInterface.pet.
Then run it from the "office" menu.
Or better for test, type in a consolewindow:

/usr/local/SimpleMysqlJavaInterface/SimpleMysqlJavaInterface

This should open a window similar to the screenshot in my last message.

If you click on "connect", you will see an error in the console, as you have no matching database yet.
So run PHPmyAdmin in your Webbrowser.
Create a new database (I suggest to call it "testdatenbank").
Add one or more tables to it.
They must follow these rules:
the first field MUST be called "nr". It must be of type "int". It must use "auto_increment" (use the checkbox "A_I").

The other fields must be of one of these types:
int
varchar
date


varchar may have a length of 1024, but usually 255 will be sufficient.
I did not take care of long values yet.

Now again, click on "connect", after you filled in the value for user and password.
By default, this is "root", with no password.

Now you should see your new tables on the left.
If you click on one, you see their contents in a view that resembles a table in Gnumeric/Excel.
Here you can modify, add, delete, or search.
You can sort the view, if you click on the header of a column.

Sourcecode
If you are a developer, and want to look at the source:
extract DatenbankMU.tar.gz to a temporary folder like /tmp/workspace/.
In Eclipse, choose:
Import - General - Existing Project into workspace.
Select root directory (choose /tmp/workspace)
Check the checkbox "copy project into workspace".
Click on "finish".
Open and run (as Java Application) "DatenbankMU - src - default package - Datenbank.MU.java".
You also must copy:
/usr/local/SimpleMysqlJavaInterface/resource/mysql-connector-java-5.1.7-bin.jar
to:
/usr/local/5_06/jdk/jre/lib/ext/
or to wherever your Java-runtime for Eclipse is located.

Datenbank.MU.java is released under the GPL v3 or later (not included yet), for info about the Sun files please visit this page: http://dev.mysql.com/downloads/connector/j/5.1.html

Mark
Attachments
DatenbankMU.tar.gz
source project for eclipse
(12.18 KiB) Downloaded 702 times
Last edited by MU on Tue 03 Mar 2009, 16:34, edited 1 time in total.
[url=http://murga-linux.com/puppy/viewtopic.php?p=173456#173456]my recommended links[/url]

User avatar
MU
Posts: 13649
Joined: Wed 24 Aug 2005, 16:52
Location: Karlsruhe, Germany
Contact:

#3 Post by MU »

hm, the jar does NOT include the mysql driver, the files in it are not sufficient :?
It is a bit more complicated to add it.
The jar must be built using a special "build.xml", an ant-script.
Then the mysql jar can be delivered together with it in the same folder.
This avoids that you have to copy it to the lib/ext/ folder of your java installation.
I will create a installation package tomorrow, and write a short instruction about how to create "runnable" packages (using a small launcher written in C for windows, or a shellscript) (setup.exe or setup-linux).

I did some research today to find out how this can be achieved, and modified a C program I once created for wxBasic (a windows starter.exe for interpreter based scripts).

Mark
[url=http://murga-linux.com/puppy/viewtopic.php?p=173456#173456]my recommended links[/url]

Leon
Posts: 265
Joined: Wed 22 Jun 2005, 21:33

#4 Post by Leon »

I tried xampp-linux-1.7_411.sfs in Barry's newest Slack Puppy 0.1.1.

This is output from rxvt:

Code: Select all

# lampp start
Starting XAMPP for Linux 1.7...
XAMPP: Starting Apache with SSL (and PHP5)...
XAMPP: Starting MySQL...
XAMPP: Starting ProFTPD...
XAMPP for Linux started
This is output form Seamonkey:

http://localhost
-
Warning: file_get_contents(lang.tmp) [function.file-get-contents]: failed to open stream: Permission denied in /opt/lampp/htdocs/xampp/index.php on line 2

Warning: Cannot modify header information - headers already sent by (output started at /opt/lampp/htdocs/xampp/index.php:2) in /opt/lampp/htdocs/xampp/index.php on line 4
-

How can I solve this problem?

User avatar
MU
Posts: 13649
Joined: Wed 24 Aug 2005, 16:52
Location: Karlsruhe, Germany
Contact:

#5 Post by MU »

Sorry Leon, I have no idea at moment :oops:

----------------
I updated the Java program in my second message.
It is a PET now for easier installation.
The mysql-driver is included.

Here are Notes I made on how to create "redistributable" java packages (will be updated with more details this week):

This document describes how to turn a java program into a distributable package.

I assume, that you have created a project "Myproject" in Eclipse.

Choose "export - Java - Runnable JAR file".

As "Export destination" choose C:\java\Myproject\resource\main.jar".

In Linux, use e.g.
"/root/java/Myproject/resource/main.jar"
Use that path correspondingly whenever I mention the Windows Path in the next instructions.



If you want to include additional JARs like a database driver:
Check the checkbox "Save as ANT script"

ANT Script location:
C:\java\Myproject\resource\build.xml


To add a jar like mysql-connector-java-5.1.7-bin.jar:
Copy it also to C:\java\Myproject\resource\

Now move the "C:\java\Myproject\resource\build.xml" to your Eclipse project with a filemanager, to
workspace\Myproject\build.xml


In Eclipse, press "F5" to update your project, it now should display this new build.xml.
Doubleclick it, to open it in the eclipse editor.

It has this line:
<attribute name="Class-Path" value="."/>
Add here your additional jar, like this:
<attribute name="Class-Path" value="mysql-connector-java-5.1.7-bin.jar ."/>

Now export your project again as runnable jar, but this time by clicking the "run" button while build.xml is the active document in the editor.

-----------------------

After the creation of the JAR, test it:
Open a consolewindow in C:\java\Myproject\resource\ , and type:
java -jar main.jar


LINUX:
Now create a startscript for Linux:
"/root/java/Myproject/Myproject"

Code: Select all

#!/bin/sh
cd /root/java/Myproject/resource
java -jar main.jar
Make it executable by typing in a console:
chmod 755 /root/java/Myproject/Myproject

To be able to see it in the menu, create a Myproject.desktop in /usr/share/applications/, use one of the existing ones as template.


WINDOWS:

Extract runjar.zip in "C:\java\Myproject".
Rename runjar.exe to Myproject.exe

Now you can create a setup.exe or a setup-linux from "C:\java\Myproject" with
http://www.installjammer.com/

It create a setup.exe, that is around 1.5 MB in size (+ size required for your project files).
runjar.exe can be selected as file that shall have a desktop link.

(more detailed instruction later)

Here is the sourcecode for runjar.exe.
I compiled it with the "lcc" compiler.

Code: Select all

//-- runjar.c
//-- changes the working directory to the one of runjar.exe \resource 
//-- starts java -jar resource/main.jar , passes arguments 
//-- returns the exit-code (0 or 1, java runs in background) 

// compile it in lcc with 
// lcc runjar.c 
// lcclnk runjar.obj -subsystem windows 

// or in MingW-Studio as win32-application 

#include <windows.h> 
#include <stdio.h> 
#include <string.h> 

char *dirname(char *entry);
char *mystrrepl(char *Str, size_t BufSiz, char *OldStr, char *NewStr);

char thedir[32000];

int main(int argc,char *argv[]) 
{ 

   DWORD ergebnis; 

	char pfad[32000]; 
   	char *neupfad;
	char befehl[32000];    
	int count=0;


//required for resourcehacker
printf("");
    
   strcpy(pfad,argv[0]); // path & filename of myself    

   size_t l = strlen(pfad);

   mystrrepl(pfad,l,"\\","/");

	neupfad=dirname(thedir);
	//printf("--%s\n" , neupfad);
  
   // neupfad now is the path of myself 
   strcat(neupfad , "resource"); 
   SetCurrentDirectory(neupfad); 
    
   // the program to run 
   strcpy(befehl,"java -jar main.jar ");    

   for (count=1;count < argc;count++) { 

        strcat(befehl, argv[count]); 
        strcat(befehl, " ");       
   } 

    STARTUPINFO si; 
    PROCESS_INFORMATION pi; 

    ZeroMemory( &si, sizeof(si) ); 
    si.cb = sizeof(si); 
    ZeroMemory( &pi, sizeof(pi) ); 
    si.dwFlags = STARTF_USESHOWWINDOW|STARTF_USESTDHANDLES; 
   si.wShowWindow = SW_SHOW; 



    // Start the main.exe. 

	//        0x08000000,                // No creation flags.

    ergebnis = CreateProcess( NULL,   // No module name (use command line). 
        befehl, // Command line. 
        NULL,             // Process handle not inheritable. 
        NULL,             // Thread handle not inheritable. 
        FALSE,            // Set handle inheritance to FALSE. 
        0x08000000,                // No creation flags. 
        NULL,             // Use parent's environment block. 
        NULL,             // Use parent's starting directory. 
        &si,              // Pointer to STARTUPINFO structure. 
        &pi );             // Pointer to PROCESS_INFORMATION strcture. 
      
    CloseHandle( pi.hProcess ); 
    CloseHandle( pi.hThread ); 


 exit(ergebnis); 
 return 0; 
}

char *mystrrepl(char *Str, size_t BufSiz, char *OldStr, char *NewStr)
{
      int OldLen, NewLen;
      char *p, *q;

      if(NULL == (p = strstr(Str, OldStr)))
            return Str;
      OldLen = strlen(OldStr);
      NewLen = strlen(NewStr);
      if ((strlen(Str) + NewLen - OldLen + 1) > BufSiz)
            return NULL;
      memmove(q = p+NewLen, p+OldLen, strlen(p+OldLen)+1);
      memcpy(p, NewStr, NewLen);
      return q;
}

// char thedir[32000];
char *dirname(char *entry){

  int laenge;
  int laenge2;
  laenge = strlen( entry );

 
  strcpy( thedir , "" );
  char *rest;

  rest = strrchr( entry , '/' );
  laenge2 =  strlen( rest );

  if( laenge2 > 1 ){
    strncat ( thedir , entry , laenge - laenge2+1 );
  }else{
    strncat ( thedir , entry , laenge );
  }
    //printf("---%s\n" , thedir);
    //printf("laenge: %d\n" , laenge);
    //printf("laenge2: %d\n" , laenge2);
    //printf("dirname3: %s\n" , entry);
  return thedir;
}
Attachments
runjar.zip
(26.17 KiB) Downloaded 711 times
Last edited by MU on Mon 09 Mar 2009, 16:48, edited 1 time in total.
[url=http://murga-linux.com/puppy/viewtopic.php?p=173456#173456]my recommended links[/url]

Partack
Posts: 5
Joined: Wed 04 Mar 2009, 14:55

@ Leons problem

#6 Post by Partack »

@ Leon: I was getting that error too. I don't know why it happens but it doesn't mean xampp is broken.

Just rename all the folders in /opt/lampp/htdocs to something else (or just delete them if you're brave xD) and then make a new (empty) xampp folder, put a test index.php (or whatever) file inside it and presto, it should work. it did for me at least.

As a side note to MU, Thanks for uploading the sfs file, I'd like to note though that when I clicked on the link to download the sfs file it gave me a 403 (permission denied) error and I had to go to http://www.puppyisos.org/ directly and follow the file tree to get what i was after.. a small inconvenience, but whatever.

Oh, and lastly, just wanted to say, xampp worked on my olllld intel celeron with 255 mb ram running puppy linux 4.1.2. xD amazing.

Cheers again. =)
~PtK

User avatar
MU
Posts: 13649
Joined: Wed 24 Aug 2005, 16:52
Location: Karlsruhe, Germany
Contact:

#7 Post by MU »

Partack,

thanks for your tips!
Looks like a permission error setting up the layered filesystem, very strange, I did not encounter this in newyearspup.

I'm glad you found a workaround :)

I also changed the first message to avoid the download error, thanks too for that.

--------------------
Today I started to rewrite my java Mysql tool.
It shall use "SWT" instead of "swing".
So it will look like a native Gtk2 application, not like a typical Java program.

Unfortunately swt has a completely different syntax.
It is developed by IBM, while Swing is from Sun.
So I cannot tell you, when it will be finished.
I already have replaced the borderlayout with a gridlayout using special options to resize elements.
And added some buttons and the list.

Now I must add the callbacks, that are different, too, and the most complicated widget, the table.
Once this is done, it will be easy to use the old database routines.

Mark
[url=http://murga-linux.com/puppy/viewtopic.php?p=173456#173456]my recommended links[/url]

Leon
Posts: 265
Joined: Wed 22 Jun 2005, 21:33

Re: @ Leons problem

#8 Post by Leon »

Partack wrote:@ Leon: I was getting that error too. I don't know why it happens but it doesn't mean xampp is broken.

Just rename all the folders in /opt/lampp/htdocs to something else (or just delete them if you're brave xD) and then make a new (empty) xampp folder, put a test index.php (or whatever) file inside it and presto, it should work. it did for me at least.
Partack,

Thank you for your help.

I tried as you suggested but it didn't work for me.

I'll try to find some other way to do it.

I'll report here if I succeeded.

User avatar
MU
Posts: 13649
Joined: Wed 24 Aug 2005, 16:52
Location: Karlsruhe, Germany
Contact:

#9 Post by MU »

I made a new version of the Java Mysql interface.

It now uses "swt" instead of swing.
The attached screenshot shows the difference:
the above program is Swing, the one below SWT.
You can see, that SWT looks like the native program on the right side.

Just the table itself still is based on swing.
SWT has a table, too, but things like sorting colums or editing a cell must be added "by hand".
I will try to make this application my project work in the end of my course, where I then would implement a SWT based table.

I uploaded a PET and a Windows-Zip.
They include the SWT and Mysql jars, so you just need a standard Java runtime and xampp to run it.

To use the Windows-program, extract it somewhere, then click on "SimpleMysqlJavaInterfaceSWT.exe".
Note: if you want to run it from a CMD shell (Dos console), you must run it with full path, like c:\tests\SimpleMysqlJavaInterfaceSWT\SimpleMysqlJavaInterfaceSWT.exe.
I already had created a full setup.exe, but then found a bug at home, and I don't have Windows here. So I just zipped it.

The PET has a menu entry.
I also uploaded the sourcefolder for Eclipse.

Download:
http://dotpups.de/files/SimpleMysqlJavaInterfaceSWT/02/

Mark
Attachments
SimpleMysqlJavaInterfaceSWT.jpg
(37.68 KiB) Downloaded 4598 times
[url=http://murga-linux.com/puppy/viewtopic.php?p=173456#173456]my recommended links[/url]

User avatar
MU
Posts: 13649
Joined: Wed 24 Aug 2005, 16:52
Location: Karlsruhe, Germany
Contact:

#10 Post by MU »

I updated runjar.zip (runjar.exe for windows) above.

It was was not compatible with wine.
I fixed it now.
You also no longer need to use the full pathname in a console.
And you can add/replace an icon with resourcehacker, I already included a Java icongroup.
Updated the sourcecode, too.

I also updated the Windows zip of my database program, and in addition uploaded a setup.exe created with installjammer.
http://dotpups.de/files/SimpleMysqlJavaInterfaceSWT/02/

I currently prepare a special version of newyearspup.
It will include Eclipse, xampp, wine, JRE for Windows, Firefox for Windows, and an updated Muppyfiler.

This will allow you to run Javaprograms in ONE environment in Linux and "Windows" for quick tests.

The screenshot shows my database running in Wine (connected to the Linux MySQL running in NYP).
Below you see the Linuxversion.

The database program will become my project work, so I have a full week in end of march to enhance it :D

Mark
Attachments
java-wine-nyp.jpg
(43.97 KiB) Downloaded 4467 times
[url=http://murga-linux.com/puppy/viewtopic.php?p=173456#173456]my recommended links[/url]

User avatar
droope
Posts: 801
Joined: Fri 01 Aug 2008, 00:17
Location: Uruguay, Mercedes

#11 Post by droope »

MU, you should create a separate thread for it, it will never be found here later on :wink:
(Lobster was looking for something like this, i think). It's looking great.

On a slightly different note, i have installed xamp, but can't create a file. That means:
When i write some code, like this:

Code: Select all

$ourFileName = "testFile.txt";
$ourFileHandle = fopen($ourFileName, 'w') or die("can't open file");
fclose($ourFileHandle);
I get:

Warning: fopen(4.txt) [function.fopen]: failed to open stream: Permission denied in /opt/lampp/htdocs/xampp/phpprocess.php on line 11
can't open file


Need to solve this :(edit: I have changed the file permissions. When i make an LS in console they appear green... Don't know what's happening.

User avatar
MU
Posts: 13649
Joined: Wed 24 Aug 2005, 16:52
Location: Karlsruhe, Germany
Contact:

#12 Post by MU »

droope, this was solved above, by Partack.
Just rename all the folders in /opt/lampp/htdocs to something else (or just delete them if you're brave xD) and then make a new (empty) xampp folder, put a test index.php (or whatever) file inside it and presto, it should work. it did for me at least.
Mark
[url=http://murga-linux.com/puppy/viewtopic.php?p=173456#173456]my recommended links[/url]

User avatar
droope
Posts: 801
Joined: Fri 01 Aug 2008, 00:17
Location: Uruguay, Mercedes

#13 Post by droope »

Hi, i solved it giving the whole folder the write permission.

:)

Cheers,

caguy1000
Posts: 3
Joined: Tue 17 Mar 2009, 23:23

mysql not starting

#14 Post by caguy1000 »

I just built a brand new puppy 4.12 inside of a vmware server... hoping to build a lamp server with a prebuilt cms in it, etc.

I installed the xampp_411.sfs file, and rebooted
then started /usr/local/bin/lampp
but mysql doesn't start
typing /opt/lampp/bin/mysql tells me that it can't connect.

what am I doing wrong.... haven't been playing long with puppy, but I am experienced at linux.

first post... please be kind.

User avatar
MU
Posts: 13649
Joined: Wed 24 Aug 2005, 16:52
Location: Karlsruhe, Germany
Contact:

#15 Post by MU »

type in a consolewindow:

tail -f /var/log/messages

There you might see a hint of what goes wrong, when you type commands.
It runs in a loop, so the messages are updated when errors occur.

Also look at the logs in:
/opt/lampp/logs/

Mark
[url=http://murga-linux.com/puppy/viewtopic.php?p=173456#173456]my recommended links[/url]

caguy1000
Posts: 3
Joined: Tue 17 Mar 2009, 23:23

re: mysql not starting

#16 Post by caguy1000 »

MU wrote:type in a consolewindow:

tail -f /var/log/messages

There you might see a hint of what goes wrong, when you type commands.
It runs in a loop, so the messages are updated when errors occur.

Also look at the logs in:
/opt/lampp/logs/

Mark
There was nothing important in /var/log/messages
mtrr: your processor does not support write-combining.

I've attached the contents of /opt/lampp/var/puppypc.err

Thanks for your help.

-- Edit --
gach.... file attaching is giving me grief
so here's the error file in it's entirety

Code: Select all

090317 17:09:43 mysqld_safe Starting mysqld daemon with databases from /opt/lampp/var
/opt/lampp/sbin/mysqld: Table 'mysql.plugin' doesn't exist
090317 17:09:43 [ERROR] Can't open the mysql.plugin table. Please run mysql_upgrade to create it.
090317 17:09:44  InnoDB: Operating system error number 13 in a file operation.
InnoDB: The error means mysqld does not have the access rights to
InnoDB: the directory.
InnoDB: File name /opt/lampp/var/mysql/ibdata1
InnoDB: File operation call: 'create'.
InnoDB: Cannot continue operation.
090317 17:09:44 mysqld_safe mysqld from pid file /opt/lampp/var/puppypc.pid ended
090317 17:46:35 mysqld_safe Starting mysqld daemon with databases from /opt/lampp/var
090317 17:46:35 mysqld_safe mysqld from pid file /opt/lampp/var/puppypc.pid ended
090317 17:46:42 mysqld_safe Starting mysqld daemon with databases from /opt/lampp/var
/opt/lampp/sbin/mysqld: Table 'mysql.plugin' doesn't exist
090317 17:46:42 [ERROR] Can't open the mysql.plugin table. Please run mysql_upgrade to create it.
090317 17:46:42  InnoDB: Operating system error number 13 in a file operation.
InnoDB: The error means mysqld does not have the access rights to
InnoDB: the directory.
InnoDB: File name /opt/lampp/var/mysql/ibdata1
InnoDB: File operation call: 'create'.
InnoDB: Cannot continue operation.
090317 17:46:42 mysqld_safe mysqld from pid file /opt/lampp/var/puppypc.pid ended
090317 17:48:34 mysqld_safe Starting mysqld daemon with databases from /opt/lampp/var
/opt/lampp/sbin/mysqld: Table 'mysql.plugin' doesn't exist
090317 17:48:35 [ERROR] Can't open the mysql.plugin table. Please run mysql_upgrade to create it.
090317 17:48:35  InnoDB: Operating system error number 13 in a file operation.
InnoDB: The error means mysqld does not have the access rights to
InnoDB: the directory.
InnoDB: File name /opt/lampp/var/mysql/ibdata1
InnoDB: File operation call: 'create'.
InnoDB: Cannot continue operation.
090317 17:48:35 mysqld_safe mysqld from pid file /opt/lampp/var/puppypc.pid ended
090317 17:49:38 mysqld_safe Starting mysqld daemon with databases from /opt/lampp/var
/opt/lampp/sbin/mysqld: Table 'mysql.plugin' doesn't exist
090317 17:49:38 [ERROR] Can't open the mysql.plugin table. Please run mysql_upgrade to create it.
InnoDB: The first specified data file /opt/lampp/var/mysql/ibdata1 did not exist:
InnoDB: a new database to be created!
090317 17:49:38  InnoDB: Setting file /opt/lampp/var/mysql/ibdata1 size to 10 MB
InnoDB: Database physically writes the file full: wait...
090317 17:49:39  InnoDB: Log file /opt/lampp/var/mysql/ib_logfile0 did not exist: new to be created
InnoDB: Setting log file /opt/lampp/var/mysql/ib_logfile0 size to 5 MB
InnoDB: Database physically writes the file full: wait...
090317 17:49:39  InnoDB: Log file /opt/lampp/var/mysql/ib_logfile1 did not exist: new to be created
InnoDB: Setting log file /opt/lampp/var/mysql/ib_logfile1 size to 5 MB
InnoDB: Database physically writes the file full: wait...
InnoDB: Doublewrite buffer not found: creating new
InnoDB: Doublewrite buffer created
InnoDB: Creating foreign key constraint system tables
InnoDB: Foreign key constraint system tables created
090317 17:49:39  InnoDB: Started; log sequence number 0 0
090317 17:49:39 [ERROR] Fatal error: Can't open and lock privilege tables: Table 'mysql.host' doesn't exist
090317 17:49:39 mysqld_safe mysqld from pid file /opt/lampp/var/puppypc.pid ended

User avatar
MU
Posts: 13649
Joined: Wed 24 Aug 2005, 16:52
Location: Karlsruhe, Germany
Contact:

#17 Post by MU »

maybe your download was corrupt.
Check the checksum of xampp-linux-1.7_411.sfs:
md5sum /mnt/home/xampp-linux-1.7_411.sfs
you should get:
0666264565c1eff406e5540047b541fb xampp-linux-1.7_411.sfs
If it is ok:
stop xampp:
lampp stop

delete the folder /opt/lampp/var/mysql/

Then copy
/initrd/pup_ro2/opt/lampp/var/mysql/
to
/opt/lampp/var/

Maybe there was an error setting up the layered filesystem, as described above with the htdocs permissions.
By creating a new copy in the writable filesystem, this should be fixed.

Mark
[url=http://murga-linux.com/puppy/viewtopic.php?p=173456#173456]my recommended links[/url]

Partack
Posts: 5
Joined: Wed 04 Mar 2009, 14:55

sendmail_path for xampp

#18 Post by Partack »

Me again, glad to hear that i helped with my last post ^__^
(also, I'm sorry to hear that other people are having problems with XAMPP.. it's been running really well for me thus far.. (good luck guys! :shock: ) )

I'm unsure if this should go here (forgive me if I'm hijacking a little bit...) but I had one HECK of an annoying search to get to this stage and by the looks of lack of information ANYWHERE, i felt it might be helpful to just pin this up for anyone aimlessly searching the forums (or google) for the same thing I was.

so XAMPP doesn't come with a sendmail.. erm.. thingy.. you know, for the sendmail_path in php.ini . well, after a long look around i finally found some very nice bloke's post at the bottom of this thread: http://www.murga-linux.com/puppy/viewto ... 1c049b1f6f

being new to linux i haven't the foggiest on how to compile source with make and stuff, and i tried but it was more trouble than i had hoped so getting the things i wanted was giving me a headache..

long story short: download that file, unzip it (click it's icon) and put the contained file in /usr/bin/

then edit your php.ini file like growler said:
; mini_sendmail takes parameters:

; -f the from email address

; -s the smtp server to direct the email through - this allows a third party smtp server to be used

; if the -s parameter is ommmitted then the localhost is assumed to be the smtp server

; -t required for sendmail compatibility??

(so it should look something like)
sendmail_path = /usr/bin/mini_sendmail -fyou@yourdomain.com -ssmtp.yourmailserverdomain.com -t
then your php pages are all set to send email!

i hope this helps anybody in the same rut that i was in.

~PtK

jamesbond
Posts: 3433
Joined: Mon 26 Feb 2007, 05:02
Location: The Blue Marble

Comprehensive guide to get MU's xampp.sfs up and running.

#19 Post by jamesbond »

Thanks MU, this xampp sfs is a good one.

I'm currently using it with Fatdog puplet, and I believe it will work with any recent puplets out there.

The permission problems are caused by:

1) xampp uses user "nobody" to run apache and mysql. User nobody in puppy has an uid of 65534, while apparently the one in xampp.sfs has is owned by an uid of 99. This has to be corrected.

2) Fatdog uses aufs (as well as all the recent puppies and puplets), and apparently it has a bug when dealing with some private folders.

How to correct this problem once and for all. Note that we have to fix no 2) first before we can fix 1) (because fix no 2 will overwrite what we do in fixing no 1).

So follow these in the order they are written here:

important: Make sure lampp is not running. If you're in doubt, type:

Code: Select all

lampp stop
fixing 2)
a. Find out where the original read-only copy of xampp.sfs is loaded. It should be in one of /initrd/pup_ro1 or /initrd/pup_ro2 .. etc. The simplest way to do it is to do:

Code: Select all

ls /initrd/pup_ro1/opt/lampp
If it's not there, it will give you an error. Repeat this the above instruction replacing pup_ro1 with pup_ro2, pup_ro3, etc until you don't get an error and get a directory list instead (for me, the correct one will be /initrd/pup_ro8/opt/lampp and this will be the example I will use for the rest of this instruction --- replace all instruction containing pup_ro8 with your own correct location.)

b. Go to your /opt/lampp/var directory, and remove mysql directory under it. Then copy back the mysql directory from the original location found in the previous step

Code: Select all

cd /opt/lampp/var
rm -rf mysql
cp -a /initrd/pup_ro8/opt/lampp/var/mysql
We are done with fixing 2. Now let's fix 1.

Fix 1) In here, we're going to replace all those uid 99 with the correct uid for nobody. This has to be done for all files under lampp directory. Do it as follows:

Code: Select all

cd /opt/lampp
find . -uid 99 -exec chown nobody '{}' +
What the above means, is that you go to the /opt/lampp directory, and then run the find command starting in your current directory (which is /opt/lampp) and find all files with uid 99. For all files found, run the "chown" command and change the owner to user "nobody".

When done, you can start lampp

Code: Select all

lampp start
And point your browser to http://localhost. Everything should work, including mysql, phpmyadmin, webalizer.

Hope that helps. I

cheers!
Fatdog64 forum links: [url=http://murga-linux.com/puppy/viewtopic.php?t=117546]Latest version[/url] | [url=https://cutt.ly/ke8sn5H]Contributed packages[/url] | [url=https://cutt.ly/se8scrb]ISO builder[/url]

Tedwood
Posts: 11
Joined: Sun 15 Mar 2009, 09:33

#20 Post by Tedwood »

I installed Xampp onto Puppy 412 with no problems and also installed Joomla to Xampp, just by following the instructions given on the devs sites, and everything seems to be working just as it should, ie. I can build a Joomla site and look at it on my own puter using the localhost adress.

What I seem to be missing however is how to view the site as if I am browsing from a remote computer on the other side of my modem. If Xampp was not intended for this purpose fair enough, but I am trying to understand why I can't get past my modem to see my website by typing my ip address into the browser, all I get is a login box and then my modem settings

The idea is to make the Joomla site viewable by others using ftp and a login, for demonstration purposes. the only other alternative I can think of is to use proprietary hosting for which would be slower, less convenient, more expensive, and I would need a domain name.

Post Reply