how to install and config mysql on fedora
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 /
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 /