Liunx CentOS 6.5下编译安装MySQL 5.6.14
标签(空格分隔): linux
一、卸载旧版版本的mysql
rpm -qa|grep mysql
查看是否安装有MySQL Server
若查询到的是
mysql-libs-5.1.73-7.el6.x86_64
rpm -e mysql_libs
//普通删除模式
rpm -e --nodeps mysql_libs
// 强力删除模式,如果使用上面命令删除时,提示有依赖的其它文件,则用该命令可以对其进行强力删除
二、安装MySQL
- 安装编译代码需要的包
yum -y install make gcc-c++ cmake bison-devel ncurses-devel
下载mysql源码包
wget http://cdn.mysql.com/Downloads/MySQL-5.6/mysql-5.6.14.tar.gz
解压源码包
tar xvf mysql-5.6.14.tar.gz
进入解压后的源码包
cd mysql-5.6.14
- 设置编译参数
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_ci
- 执行编译并安装
make && make install
在执行编译和安装时特别的浪费时间,预计时间最少要15分钟,在安装完成后,会在/usr/local生成mysql文件夹
三、配置MySQL
当安装完成后,MySQL的所有者和所在组都是为root,
要将mysql文件夹的所有者和所在组设置为mysql用户和mysql组
- 设置权限
cat /ect/passwd
查看用户
cat /etc/group
查看用户组列表
如果没有就创建mysql用户和组
groupadd mysql
添加mysql组
useradd -g mysql mysql
添加mysql用户
修改/usr/local/mysql权限
chown -R mysql:mysql /usr/local/mysql
第一个mysql:将所有者 ,改为mysql
第二个mysql: 将所有组,改为mysql
cd /usr/local/mysql
切换到mysql文件加下
初始化配置,进入安装路径(在执行下面的指令),执行初始化配置脚本,创建系统自带的数据库和表
scripts/mysql_install_db --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --user=mysql
当CentOS6.x版本操作系统安装完成后,在/etc目录下回存在一个my.cnf文件需要将此文件更名为其他名字,如:/etc/my.cng.bak,否则该文件会干扰源码安装的MySQL的正确配置,造成无法启动。
mv /etc/my.cnf /etc/my.cnf.bak
在启动MySQL服务时,会按照my.cnf,先在etc目录下,找不到则会搜索”$basedir/my.cnf”就是/usr/mysql/my.cnf 这是最MySQL5.5开始后的配置文件的默认位置。
添加服务,拷贝服务脚本到init.d目录,并设置开机启动(要在/usr/local/mysql下执行)
cp support-files/mysql.server /etc/init.d/mysql
chkconfig mysql on
设置mysql自动启动,不管在哪个级别上
service mysql start
启动mysql服务
service mysql stop
停止mysql服务
- 修改root密码
cd /usr/local/mysql/bin
进入mysql/bin目录
./mysql -uroot
使用root账户
‘SET PASSWORD = PASSWORD(‘root’);’ 设置mysql密码为root
quit;
退出mysql
- 设置环境变量
vim /etc/profile
进入环境设置文件
在PATH= 添加mysql/bin的路径,这样就可以在全局访问MySQL
这样就可以在全局都能进入mysql
mysql 设置远程连接
mysql默认使用的3306端口,在CenOS6.5下默认开放的是22端口所以要开发3306端口
vim /etc/sysconfig/iptables
进入防火墙文件
添加许可3306(可以使用yy
复制一个许可,p
粘贴修改端口号就可以了)
端口添加成功后重启防火墙service iptables restart
service iptables status
查看端口的状态,可以看到3306的端口已经打开
- 修改mysql允许任何用户使用root/root连接
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'root' WITH GRANT OPTION;
设置其他连接权限的可以参考:
https://blog.csdn.net/zx6571269/article/details/81001821
打开数据库工具输入地址和密码后连接
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'root' WITH GRANT OPTION;
flush privileges;