编译安装MySQL5.6

安装必需的工具

  比如cmake、gcc、g++、git

  CentOS使用下面的命令:

yum install cmake gcc g++ git

  Ubuntu使用下面的命令:

apt-get install cmake gcc g++ git

  或者

#centos
yum groupinstall "Development Tools"

#ubuntu
apt-get install -y build-essential

  

安装ncurses

  CentOS使用下面的命令:

yum install ncurses-devel

  Ubuntu使用下面的命令:

apt-get install libncurses5-dev 

  

安装openssl和libssl_dev

  CentOS使用下面的命令:

yum install openssl libssl_dev

  Ubuntu使用下面的命令:

apt-get install openssl libssl_dev

  

  

下载mysql源码

cd /usr/local/src
wget https://dev.mysql.com/get/Downloads/MySQL-5.6/mysql-5.6.44.tar.gz
tar -zxf mysql-5.6.44.tar.gz
cd mysql-5.6.44/

编译配置

cmake  
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql    
-DMYSQL_DATADIR=/usr/local/mysql/data    
-DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock 
-DSYSCONFDIR=/etc   
-DWITH_SSL=yes 
-DWITH_MYISAM_STORAGE_ENGINE=1 
-DWITH_INNOBASE_STORAGE_ENGINE=1 
-DWITH_MEMORY_STORAGE_ENGINE=1 
-DWITH_READLINE=1 
-DMYSQL_TCP_PORT=3306 
-DENABLED_LOCAL_INFILE=1 
-DWITH_PARTITION_STORAGE_ENGINE=1 
-DEXTRA_CHARSETS=all 
-DDEFAULT_CHARSET=utf8 
-DDEFAULT_COLLATION=utf8_general_ci

    

编译安装

make && make install

  考虑到mysql的make操作需要很长时间,如果是多核处理器,建议使用多核同时进行编译:

# 开启4个job进行make操作
make -j 4

# 编译完成后进行安装
make install

  

常见问题的解决方案

  可以查看编译安装MySQL5.6失败的相关问题解决方案

  是我在安装mysql的时候,经常出现的错误,以及相关解决方案。

 

拷贝相关配置文件

#进入到安装目录
cd /usr/local/mysql/

#创建mysql用户和用户组
useradd mysql

#将安装目录的所属用户组和用户改为mysql
chown  -R  mysql:mysql  /usr/local/mysql/

#改变data目录的读写权限
chmod  764  -R  /usr/local/mysql/data/

#拷贝mysql配置文件
cp /usr/local/mysql/support-files/my-default.cnf   /etc/my.cnf

#添加mysql到init.d中,使得可以通过service mysqld start|stop|restart来管理mysql
cp /usr/local/mysql/support-files/mysql.server  /etc/init.d/mysqld

  

修改配置文件

vi /etc/my.cnf

#修改配置
basedir=/usr/local/mysql
datadir=/usr/local/mysql/data
port=3306
#server_id = .....
#socket = .....
#编辑完之后,保存并退出

  

初始化并启动数据库

#初始化数据库,--user表示使用前面的mysql用户
/usr/local/mysql/scripts/mysql_install_db --user=mysql

#启动数据库
service mysqld start

#查看数据库是否启动 
lsof -i:3306 
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME 
mysqld 23551 mysql 10u IPv6 167754 0t0 TCP *:mysql (LISTEN)

  

   

添加mysql/bin到全局变量PATH中

#编辑~/.bash_profile
#在PATH后面增加/usr/local/mysql/bin
#比如之前是PATH=$PATH:$HOME/bin:/usr/local/node/bin
#那么此时在最后面追加

PATH=$PATH:$HOME/bin:/usr/local/node/bin:/usr/local/mysql/bin
export PATH

#保存并退出

source ~/.bash_profile

  

登录到MySQL

#初次登录数据库时,并没有为root用户设置密码,即密码为空
mysql -uroot -p

  

修改mysql的root用户密码

#将root用户的密码改为123456
mysqladmin -u root password "123456"

#使用新密码登录
mysql -h localhost -uroot -p123456  
原文地址:https://www.cnblogs.com/-beyond/p/8398323.html