TechSpot

Trying to start up MySQL on Linux Machine in Fedora Core 3

By qtran101
Jan 19, 2005
Topic Status:
Not open for further replies.
  1. Hi there:

    I have followed the instructions of installing mysql in tar.gz form

    I am at the part of running it with

    Starting the MySQL Database
    # su -
    # cd /usr/local/mysql
    # bin/mysqld_safe --user=mysql &
    Starting mysqld daemon with databases from /usr/local/mysql/data

    It looks like the MySQL starts and then automatically end by itself.

    The error message is :
    "STOPPING server from pid file /var/run/mysqld/mysqld.pid
    050119 16:00:47 mysqld ended"

    I then go to check the contents of this mysql.pid and it does not exist when I cat. Actually the folder /var/run/mysqld/ does not even exist in /var/run/ .

    Can you guys lend me some insight as to what went run in my install of mysql, in terms of newbie language for linux.

    thanks a lot

    PS I did run script as req for the grant files.
    # su -
    # cp mysql-standard-4.0.20-pc-linux-i686.tar.gz /usr/local
    # cd /usr/local
    # gunzip mysql-standard-4.0.20-pc-linux-i686.tar.gz
    # tar xvf mysql-standard-4.0.20-pc-linux-i686.tar
    # ln -s mysql-standard-4.0.20-pc-linux-i686 mysql
    # cd mysql

    # scripts/mysql_install_db --user=mysql
  2. Aquilegi

    Aquilegi Newcomer, in training

    Any responses to your post?

    Hi...I've been encountering the same problem with MySQL...when I look at the logfile it says that it can't create/write mysqld.pid and then says can't find a host.frm file. (Sorry...I meant to write down the exact message, but I was in a hurry this morning and can't remember the path). :confused:
  3. sifonell

    sifonell Newcomer, in training

    Why not install the MySQL included in the distribution?

    There is one basic fact that makes Fedora a very easy to manage distribution.

    That is yum

    Yum is a new feature which was launched since fedora 1. and has updatede in release 3.

    with yum all you would have to do is something like

    # yum install mysql

    this is the clients

    # yum install mysql-server

    Yum will look in its package sources and check for dependencies and get them all and finally install.

    Why do i sugget to do it like this? Fedora is a rpm-based system, unlike Slackware, for example, where the "natural" way is to install the rpms already released for that system instead of installing the binaries and compiling from source.

    rpm-based install of mysqld provides integratikon with its sysV based structure (the way that the init scripts are kept)

    Thus you can say then service mysqld start|stop|reload|status


    How everm if you don't want to do it i suggest the following, which is always a good debugging practice:

    have two terminals open:

    in the first terminal you type

    # tail -f /var/log/mysqld (or whatever the error logfile is)
    Type then a couple of newlines so you know where you are. The tail -f command "watches" the file continuously

    In the second console, AFTER you have done this, start the mysql daemon again.


    It will crash. Watch the output in the logfile and if it doesn't help you, post it here

    Hope it helps
  4. sifonell

    sifonell Newcomer, in training

    your problem resides in the permissions

    the host.frm file is located in the folder where mysql keeps the "mysql" database, which is its core permissions database.

    check that the user you set mysql to run as exists and that it has the necessary permisions over the file and thedirectory structure it lies under.

    let's say that mysql holds its databases in /usr/local/share/mysqldata and that it was set to run as mysql

    # grep mysql /etc/passwd

    if the user is not there, create the group for it, say mysql with gid 55 (let's say)

    # adduser -s /sbin/nologin -m -g mysql mysql
    # chown -v -R /usr/local/share/mysqldata
    # chgrp -v -R /usr/local/share/mysqldata
    # chmod -v -R 644 /usr/local/share/mysqldata

    now mysql should have all the permissions it requires

    The same issue is with the pid file.

    Hope this really helps :)
  5. Phantasm66

    Phantasm66 Newcomer, in training Posts: 6,504

    That's what got me last night when I was upgrading the mysql used in the container I have for applications I have written. I was scratching my head for about 1 hour until I realised I had to go into the mysql var directory and recursively change the ownership:

    chown -R mysql *

    Then the mysql server started up with no problems.

    Like sifonell said, check the error log files. Under mysql's var directory, I found this file:

    localhost.localdomain.err

    When I did a less on the file, I found this bit:

    50319 23:42:21 mysqld started
    050319 23:42:21 [ERROR] Fatal error: Can't change to run as user 'mysql' ; Please check that the user exists!


    Essentially, I had forgotten when reinstalling Fedore Core to recreate the mysql user and set the permissions on the database files appropriately, once this was done all was well.

    The lesson from all this..... READ LOG FILES! They are there for a reason.
  6. choanhemnhe

    choanhemnhe Newcomer, in training

    thank you !

    this infor realy heplfull !
Topic Status:
Not open for further replies.


Add New Comment

TechSpot Members
Login or sign up for free,
it takes about 30 seconds.
You may also...


Get complete access to the TechSpot community. Join thousands of technology enthusiasts that contribute and share knowledge in our forum. Get a private inbox, upload your own photo gallery and more.