This howto will show you how to install MySQL 5.x, start the service, login via terminal, change the root database admin password, add a new user, add a new database, remove all anonymous logins, and finally the installation of the gui tool mysql-administrator.
Applicable to Fedora Versions
    * Fedora Core 6 all versions
Requirements
   1. Login to a terminal as root using one of these options: su --login | su -l | or: su -
   2. Yum must also be installed and functional
Doing the Work
   1. Install mysql mysql-server:
      # yum install mysql mysql-server
      Loading "priorities" plugin
      Loading "changelog" plugin
      Loading "fastestmirror" plugin
      Loading "allowdowngrade" plugin
      Loading "kernel-module" plugin
      Loading "fedorakmod" plugin
      Loading "installonlyn" plugin
      Loading "protectbase" plugin
      Setting up Install Process
      Setting up repositories
      livna                     100% |=========================| 1.1 kB    00:00     
      updates                   100% |=========================| 1.2 kB    00:00     
      core                      100% |=========================| 1.1 kB    00:00     
      extras                    100% |=========================| 1.1 kB    00:00     
      Loading mirror speeds from cached hostfile
      Reading repository metadata in from local files
      primary.xml.gz            100% |=========================| 1.8 MB    00:06     
      extras    : ################################################## 5594/5594
      0 packages excluded due to repository priority protections
      0 packages excluded due to repository protections
      Parsing package install arguments
      Resolving Dependencies
      --> Populating transaction set with selected packages. Please wait.
      ---> Downloading header for mysql to pack into transaction set.
      mysql-5.0.27-1.fc6.i386.r 100% |=========================|  36 kB    00:00     
      ---> Package mysql.i386 0:5.0.27-1.fc6 set to be updated
      ---> Downloading header for mysql-server to pack into transaction set.
      mysql-server-5.0.27-1.fc6 100% |=========================|  33 kB    00:00     
      ---> Package mysql-server.x86_64 0:5.0.27-1.fc6 set to be updated
      ---> Downloading header for mysql to pack into transaction set.
      mysql-5.0.27-1.fc6.x86_64 100% |=========================|  36 kB    00:00     
      ---> Package mysql.x86_64 0:5.0.27-1.fc6 set to be updated
      --> Running transaction check
      --> Processing Dependency: perl-DBI for package: mysql-server
      --> Processing Dependency: perl(DBI) for package: mysql
      --> Processing Dependency: perl(DBI) for package: mysql-server
      --> Processing Dependency: perl-DBD-MySQL for package: mysql-server
      --> Restarting Dependency Resolution with new changes.
      --> Populating transaction set with selected packages. Please wait.
      ---> Downloading header for perl-DBI to pack into transaction set.
      perl-DBI-1.52-1.fc6.x86_6 100% |=========================|  16 kB    00:00     
      ---> Package perl-DBI.x86_64 0:1.52-1.fc6 set to be updated
      ---> Downloading header for perl-DBD-MySQL to pack into transaction set.
      perl-DBD-MySQL-3.0007-1.f 100% |=========================| 8.5 kB    00:00     
      ---> Package perl-DBD-MySQL.x86_64 0:3.0007-1.fc6 set to be updated
      --> Running transaction check
      Dependencies Resolved
      =============================================================================
       Package                 Arch       Version          Repository        Size 
      =============================================================================
      Installing:
       mysql                   i386       5.0.27-1.fc6     updates           3.3 M
       mysql                   x86_64     5.0.27-1.fc6     updates           3.3 M
       mysql-server            x86_64     5.0.27-1.fc6     updates            10 M
      Installing for dependencies:
       perl-DBD-MySQL          x86_64     3.0007-1.fc6     core              147 k
       perl-DBI                x86_64     1.52-1.fc6       core              605 k
      Transaction Summary
      =============================================================================
      Install      5 Package(s)         
      Update       0 Package(s)         
      Remove       0 Package(s)         
      Total download size: 18 M
      Is this ok [y/N]:
   2. Start MySQL server daemon (mysqld):
      # service mysqld start
      Initializing MySQL database:  Installing all prepared tables
      Fill help tables
      To start mysqld at boot time you have to copy support-files/mysql.server
      to the right place for your system
      PLEASE REMEMBER TO SET A PASSWORD FOR THE MySQL root USER !
      To do so, start the server, then issue the following commands:
      /usr/bin/mysqladmin -u root password 'new-password'
      /usr/bin/mysqladmin -u root -h angstrom password 'new-password'
      See the manual for more instructions.
      You can start the MySQL daemon with:
      cd /usr ; /usr/bin/mysqld_safe &
      You can test the MySQL daemon with the benchmarks in the 'sql-bench' directory:
      cd sql-bench ; perl run-all-tests
      Please report any problems with the /usr/bin/mysqlbug script!
      The latest information about MySQL is available on the web at
      http://www.mysql.com
      Support MySQL by buying support/licenses at http://shop.mysql.com
                                                                 [  OK  ]
      Starting MySQL:                                            [  OK  ]
   3. Login as root database admin to MySQL server:
      # mysql -u root
      Welcome to the MySQL monitor.  Commands end with ; or \g.
      Your MySQL connection id is 2 to server version: 5.0.27
      Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
      mysql>
   4. Change root database admin password: (note: once this step is complete you'll need to login with: mysql -u root -p)
      mysql> SET PASSWORD FOR 'root'@'localhost' = PASSWORD('mypass');
      Query OK, 0 rows affected (0.00 sec)
      mysql> FLUSH PRIVILEGES;
      Query OK, 0 rows affected (0.00 sec)
      mysql>
   5. Remove anonymous access to the database(s):
      mysql> DELETE FROM mysql.user WHERE User = '';
      Query OK, 2 rows affected (0.00 sec)
      mysql> FLUSH PRIVILEGES;
      Query OK, 0 rows affected (0.00 sec)
      mysql>
   6. Add a new user with database admin privs for all databases:
      mysql> GRANT ALL PRIVILEGES ON *.* TO 'warren'@'localhost' IDENTIFIED BY 'mypass' WITH GRANT OPTION;
      Query OK, 0 rows affected (0.00 sec)
      mysql> FLUSH PRIVILEGES;
      Query OK, 0 rows affected (0.00 sec)
      mysql> 
   7. Add a new user with database admin privs for a specific database, in this case the database is called "bugzilla": (note: The 'bugzilla' database must first be added)
      mysql> GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, INDEX, ALTER, CREATE TEMPORARY TABLES, LOCK TABLES ON bugzilla.* TO 'warren'@'localhost' IDENTIFIED BY 'mypass';
      Query OK, 0 rows affected (0.00 sec)
      mysql> FLUSH PRIVILEGES;
      Query OK, 0 rows affected (0.00 sec)
      mysql> 
   8. Add a MySQL database:
      mysql> create database bugzilla;
      Query OK, 1 row affected (0.15 sec)
      mysql> FLUSH PRIVILEGES;
      Query OK, 0 rows affected (0.00 sec)
      mysql> quit
      Bye
   9. Installing mysql-administrator (note: This tool can be found in the gnome main menu under 'System Tools' once installed):
      # yum install mysql-administrator
      Loading "priorities" plugin
      Loading "changelog" plugin
      Loading "fastestmirror" plugin
      Loading "allowdowngrade" plugin
      Loading "kernel-module" plugin
      Loading "fedorakmod" plugin
      Loading "installonlyn" plugin
      Loading "protectbase" plugin
      Setting up Install Process
      Setting up repositories
      Loading mirror speeds from cached hostfile
      Reading repository metadata in from local files
      0 packages excluded due to repository priority protections
      0 packages excluded due to repository protections
      Parsing package install arguments
      Resolving Dependencies
      --> Populating transaction set with selected packages. Please wait.
      ---> Downloading header for mysql-administrator to pack into transaction set.
      mysql-administrator-1.1.1 100% |=========================|  25 kB    00:00     
      ---> Package mysql-administrator.x86_64 0:1.1.10-3.fc6 set to be updated
      --> Running transaction check
      --> Processing Dependency: libsigc-2.0.so.0()(64bit) for package: mysql-administrator
      --> Processing Dependency: mysql-gui-common for package: mysql-administrator
      --> Processing Dependency: libgdkmm-2.4.so.1()(64bit) for package: mysql-administrator
      --> Processing Dependency: libpangomm-1.4.so.1()(64bit) for package: mysql-administrator
      --> Processing Dependency: libglibmm-2.4.so.1()(64bit) for package: mysql-administrator
      --> Processing Dependency: libcairomm-1.0.so.1()(64bit) for package: mysql-administrator
      --> Processing Dependency: libatkmm-1.6.so.1()(64bit) for package: mysql-administrator
      --> Processing Dependency: libgtkmm-2.4.so.1()(64bit) for package: mysql-administrator
      --> Restarting Dependency Resolution with new changes.
      --> Populating transaction set with selected packages. Please wait.
      ---> Downloading header for gtkmm24 to pack into transaction set.
      gtkmm24-2.10.5-1.fc6.x86_ 100% |=========================| 7.8 kB    00:00     
      ---> Package gtkmm24.x86_64 0:2.10.5-1.fc6 set to be updated
      ---> Downloading header for cairomm to pack into transaction set.
      cairomm-1.2.4-1.fc6.x86_6 100% |=========================| 5.2 kB    00:00     
      ---> Package cairomm.x86_64 0:1.2.4-1.fc6 set to be updated
      ---> Downloading header for libsigc++20 to pack into transaction set.
      libsigc++20-2.0.17-2.x86_ 100% |=========================| 6.1 kB    00:00     
      ---> Package libsigc++20.x86_64 0:2.0.17-2 set to be updated
      ---> Downloading header for glibmm24 to pack into transaction set.
      glibmm24-2.12.3-1.x86_64. 100% |=========================| 6.1 kB    00:00     
      ---> Package glibmm24.x86_64 0:2.12.3-1 set to be updated
      ---> Downloading header for mysql-gui-common to pack into transaction set.
      mysql-gui-common-1.1.10-3 100% |=========================|  17 kB    00:00     
      ---> Package mysql-gui-common.x86_64 0:1.1.10-3.fc6 set to be updated
      --> Running transaction check
      Dependencies Resolved
      =============================================================================
       Package                 Arch       Version          Repository        Size 
      =============================================================================
      Installing:
       mysql-administrator     x86_64     1.1.10-3.fc6     extras            1.5 M
      Installing for dependencies:
       cairomm                 x86_64     1.2.4-1.fc6      extras             40 k
       glibmm24                x86_64     2.12.3-1         extras            145 k
       gtkmm24                 x86_64     2.10.5-1.fc6     extras            1.1 M
       libsigc++20             x86_64     2.0.17-2         extras             49 k
       mysql-gui-common        x86_64     1.1.10-3.fc6     extras            208 k
      Transaction Summary
      =============================================================================
      Install      6 Package(s)         
      Update       0 Package(s)         
      Remove       0 Package(s)         
      Total download size: 3.1 M
      Is this ok [y/N]:
Troubleshooting
How to test
   1. Make sure mysql and mysql server are indeed installed and that they are the correct versions:
      # rpm -qa | grep mysql && chkconfig --list | grep mysql
      mysql-5.0.27-1.fc6
      mysql-5.0.27-1.fc6
      mysql-gui-common-1.1.10-3.fc6
      mysql-server-5.0.27-1.fc6
      mysql-administrator-1.1.10-3.fc6
      mysqld          0:off   1:off   2:off   3:off   4:off   5:off   6:off
   2. Starting mysqld on boot:
      # chkconfig mysqld on && service mysqld restart && chkconfig --list | grep mysqld
      Stopping MySQL:                                            [  OK  ]
      Starting MySQL:                                            [  OK  ]
      mysqld          0:off   1:off   2:on    3:on    4:on    5:on    6:off
Common problems and fixes
Problem: User has not properly logged in with roots environment.
Fix: Login with: su --login | su -l | su -
More Information
Disclaimer
We test this stuff on our own machines, really we do. But you may run into problems, if you do, come to #fedora on irc.freenode.net
Added Reading
    * http://dev.mysql.com/doc/