How to Install MySQL 5.6 on CentOS 6.3/RedHat EL6/Fedora

来源:互联网 发布:手机振动器软件 编辑:程序博客网 时间:2024/06/05 04:58

转自:http://opensourcedbms.com/dbms/installing-mysql-5-6-on-cent-os-6-3-redhat-el6-fedora/


First head over here and download MySQL 5.6.14 rpm’s under Oracle & Redhat Linux 6 section of rpm’s.

You want to download these rpm’s to your CentOS 6 server [As we will install 64bit version on MySQL 5.6] :

  1. Red Hat/Oracle Enterprise Linux ver. 6 (x86, 64-bit), RPM Package – MySQL Server : MySQL-server-5.6.14-1.el6.x86_64.rpm
  2. Red Hat/Oracle Enterprise Linux ver. 6 (x86, 64-bit), RPM Package – Shared components : MySQL-shared-5.6.14-1.el6.x86_64.rpm
  3. Red Hat/Oracle Enterprise Linux ver. 6 (x86, 64-bit), RPM Package – Client Utilities : MySQL-client-5.6.14-1.el6.x86_64.rpm

To download on command line [Make sure that you have wget utility installed, if not install it :

yum install wget

Now download the rpm's with wget utility:

wget http://dev.mysql.com/get/Downloads/MySQL-5.6/MySQL-shared-5.6.14-1.el6.x86_64.rpm/from/http://cdn.mysql.com/wget http://dev.mysql.com/get/Downloads/MySQL-5.6/MySQL-client-5.6.14-1.el6.x86_64.rpm/from/http://cdn.mysql.com/wget http://dev.mysql.com/get/Downloads/MySQL-5.6/MySQL-server-5.6.14-1.el6.x86_64.rpm/from/http://cdn.mysql.com/

Image 001

Now start installing rpms onto your server:

Make sure that Perl is installed on your server before you install MySQL, if not MySQL server rpm will complain that it cannot be installed. So its kind of pre-requisite.

Image 002

To Install perl run :

yum install perl

Image 003

Install MySQL 5.6 rpms now :

Start with shared libraries first and then work towards installing server and client utilities at the very end.

rpm -ivh MySQL-shared-5.6.14-1.el6.x86_64.rpmrpm -ivh MySQL-server-5.6.14-1.el6.x86_64.rpmrpm -ivh MySQL-client-5.6.14-1.el6.x86_64.rpm

If you have conflicts with existing libs(install of MySQL-server-5.6.10-1.el6.x86_64 conflicts with file from package mysql-libs-5.1.66-2.el6_3.x86_64), please download shared-compact package and do the following (Once complete, please re-install as stated above) :

wget http://dev.mysql.com/get/Downloads/MySQL-5.6/MySQL-shared-compat-5.6.14-1.el6.x86_64.rpm/from/http://cdn.mysql.com/rpm -Uvh MySQL-shared-compat-5.6.10-1.el6.x86_64.rpm

Image 004

 

Image 005

 

On a successful install you should be seeing the log below:

 

MySQL Server Installation log:

 

Preparing... ########################################### [100%]

1:MySQL-server ########################################### [100%]

2013-02-08 14:59:19 0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use –explicit_defaults_for_timestamp server option (see documentation for more details).

2013-02-08 14:59:19 2959 [Note] InnoDB: The InnoDB memory heap is disabled

2013-02-08 14:59:19 2959 [Note] InnoDB: Mutexes and rw_locks use GCC atomic builtins

2013-02-08 14:59:19 2959 [Note] InnoDB: ………

2013-02-08 14:59:19 2959 [Note] InnoDB: ………

A RANDOM PASSWORD HAS BEEN SET FOR THE MySQL root USER ! You will find that password in ‘/root/.mysql_secret’.

You must change that password on your first connect, no other statement but ‘SET PASSWORD’ will be accepted. See the manual for the semantics of the ‘password expired’ flag.

Also, the account for the anonymous user has been removed.

In addition, you can run:

/usr/bin/mysql_secure_installation

which will also give you the option of removing the test database. This is strongly recommended for production servers.

See the manual for more instructions.

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

WARNING: Found existing config file /usr/my.cnf on the system. Because this file might be in use, it was not replaced, but was used in bootstrap (unless you used –defaults-file) and when you later start the server. The new default config file was created as /usr/my-new.cnf, please compare it with your file and take the changes you need.

 

Image 007

 Its all done, lets set some passwords, create user and grant access to outside clients for accessing the database:

 In MySQL 5.6 root has a default password assigned and its located at /root/.mysql_secret file as mention in MySQL server Installation log.

 Image 008

 cat that file :

cat /root/.mysql_secret

to get the password that has been set for MySQL default root user

Image 009

Now lets login to the database server for the first time and set password. That’s the only first SQL command that works before you can proceed any further. To do that we need to start our newly installed database server.

service mysql start

Image 010

Now login into database server using MySQL client utility and change password. To login into database server simply run command below and provide with the password that installation generated for you in /root/.mysql_secret file.

mysql -uroot -p

Image 011

Once you logged in, you have to change your root users default password. You cannot run any others commands.

Image 012

To change MySQL 5.6 database server root password simply run this command :

SET PASSWORD FOR 'root'@'localhost' = PASSWORD('opensourcedbms');

Also there are other root users in MySQL if you are familiar with its users table [root@127.0.0.1 ; root@::1, root@hostname], once you login with superuser you can update all of them later. Also once all this is done you can remove /root/.mysql_secret file.

Image 013

Now that you have set root user password, create a super user to access database server from outside server. Its generally not a good practice to grant root user access to outside world.

CREATE USER 'superadmin'@'%' IDENTIFIED BY 'opensourcedbmsadmin';
GRANT ALL ON *.* TO 'superadmin'@'%' WITH GRANT OPTION;

Image 014

Now you can exit out of mysql command line client [Type \q or quit to exit] and we can use this newly created user to access this database server from outside world. Before you can do that, make sure that your server firewall rules are updated for granting this server to respond at port 3306 for outside world. First get out of the mysql command line client and to add a new firewall rule to your CentOS database server firewall rules and to do that edit

vi /etc/sysconfig/iptables

file and add the following line:

-A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT

Image 015

Save and exit out of the file and restart iptables for the new rule to take effect. To restart iptables, simply run the following command :

service iptables restart

Image 017

Last but not least make sure that this new MySQL server is enabled to auto start when server restarts.

chkconfig mysql --level 2345 on

Now you are ready to connect to this database server from any host in your network. Simply open a database client [MySQL Workbench / Navicat / SQLYog are few clients that you can use to access it from GUI side of things] that you installed and provide the new super user/password that you created and the host-name of this server and there you will be in your new database server.

mysql 5.5 sqlyogImage 015

If you are running this server in a virtual box environment, make sure that you do port forwarding (NAT Only) to pass through 3306 database port to guest VM which can be done by going to settings of your VM > Network > Advanced > Port forwarding. This is more specific to Oracle Virtual Box.

Image 018


0 0
原创粉丝点击