Source code compilation Install MySQL

Source: Internet
Author: User
Tags iptables

In CentOS 6.4, the installation of MySQL via Yum is version 5.1, older, so you want to install the high version of 5.6.14 via source code.

Text: One: Uninstall the old version

Use the following command to check if MySQL Server is installed

Rpm-qa | grep MySQL

Some words are unloaded by the following command

RPM-E MySQL   //normal Delete mode rpm-e--nodeps mysql    //brute force Delete mode, if you use the above command to delete, prompted to have other dependent files, then use this command can be strongly deleted
Two: Install MySQL install the package required for compiling code
Yum-y install make gcc-c++ cmake bison-devel  ncurses-devel
Download MySQL 5.6.14
wget Http:// xvf mysql-5.6.14.tar.gzcd mysql-5.6.14
Compiling the installation
Cmake-dcmake_install_prefix=/usr/local/mysql-dmysql_datadir=/usr/local/mysql/data-dsysconfdir=/etc-dwith_ Myisam_storage_engine=1-dwith_innobase_storage_engine=1-dwith_memory_storage_engine=1-dwith_readline=1-dmysql_ Unix_addr=/var/lib/mysql/mysql.sock-dmysql_tcp_port=3306-denabled_local_infile=1-dwith_partition_storage_ Engine=1-dextra_charsets=all-ddefault_charset=utf8-ddefault_collation=utf8_general_cimake && make Install

The compiled parameters can refer to

The whole process takes about 30 minutes ... A long wait

Three: Configure MySQL settings permissions

Use the following command to see if there are MySQL users and user groups

CAT/ETC/PASSWD View user list Cat/etc/group  View user Groups list

If not, create

Groupadd mysqluseradd-g MySQL MySQL

Modify/usr/local/mysql Permissions

Chown-r Mysql:mysql/usr/local/mysql

Modify/usr/local/mysql Permissions

Initialize configuration

Go to installation path


Enter the installation path, execute the initialization configuration script, create the system's own database and table


Note: When starting the MySQL service, will be in a certain order to search my.cnf, first in the/etc directory, find will search "$basedir/my.cnf", in this case is/usr/local/mysql/ MY.CNF, this is the default location for the new MySQL configuration file!

Note: After the minimum installation of the CentOS version 6.4 operating system, there will be a my.cnf in the/etc directory, which will need to be renamed to a different name, such as:/etc/ My.cnf.bak, otherwise, the file will interfere with the correct configuration of the source installed MySQL, resulting in the inability to start.

After updating the system with Yum Update, you need to check if there is a my.cnf in the/etc directory, and if so, rename it to something else. Otherwise, MySQL will start with this configuration file, which may cause problems such as an inability to start properly.

Start MySQL

Add services, Copy service scripts to the INIT.D directory, and set boot boot

CP support-files/mysql.server/etc/init.d/mysqlchkconfig MySQL onservice mysql start  --Start MySQL
Configure users

After MySQL starts successfully, Root does not have a password, we need to set the root password.

Before setting, we need to set path, or we can't call MySQL directly

Modify the/etc/profile file to add at the end of the file

Path=/usr/local/mysql/bin: $PATHexport PATH

Close the file, run the following command, and let the configuration take effect immediately


Now, we can enter MySQL in the terminal directly into the MySQL environment

Execute the following command to modify the root password

Mysql-uroot  mysql> SET PASSWORD = PASSWORD (' 123456 ');

To set the root user to have remote access, perform

Mysql> GRANT All privileges on * * to ' root ' @ ' 172.16.% ' identified by ' password ' with GRANT OPTION;

When the red password is remote access, the root user's password can be different from the local.

Configuring firewalls

Firewall 3306 port is not enabled by default, to remote access, you need to open this port


Under "-A input–m State--state new–m tcp–p–dport 22–j ACCEPT", add:

-A input-m state--state new-m tcp-p-dport 3306-j ACCEPT

Then save and close the file, run the following command in the terminal and refresh the firewall configuration:

Service Iptables Restart
OK, all configured, you can access your MySQL ~

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

December 02, 2014 added:

FIREWALLD is used as a firewall by default in CentOS 7, so after modifying iptables, it doesn't work after rebooting the system.

The Add port method in Firewalld is as follows:

Firewall-cmd--zone=public--add-port=3306/tcp --permanent


Transferred from:

Source code compilation Install MySQL

Related Article

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.