Centos6源码编译安装Mysql5.7.17教程(超详细)
今天给大家带来的教程是如何在Centos6源码编译安装Mysql5.7.17,很多动手实践超强的小伙伴喜欢研究试试这些东西,因此附上此教程供大家动手操作!
一,卸载旧版本mysql(若无请跳过)
1.使用下面的命令检查是否安装有mysql
rpm -qa|grep -i mysql
2,有的话就卸载
yum remove MySQL-server-5.6.35-1.el6.i686
yum remove MySQL-devel-5.6.35-1.el6.i686
3,删除相关目录
whereis mysql
rm -rf /usr/share/mysql
rm -rf /var/lib/mysql
mv /usr/lib/mysql /usr/lib/mysql.bak #这个当时不确定是RMP包所创建,暂时改名
二,安装MySQL的
4.如图所示,安装编译代码需要的包
yum -y install make gcc-c++ cmake bison-devel ncurses-devel perl perl-devel
5,下载MySQL 5.7.17
wget http://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.12.tar.gz
tar zxvf mysql-5.7.12.tar.gz
cd mysql-5.7.12
6.递归创建目录:mkdir -p / usr / local / mysql / data
7.下载提升
mysql5.7.17需要这个包来编译,wget网络差会下载失败,可通过浏览器下载后上传
wget http://www.sourceforge.net/projects/boost/files/boost/1.59.0/boost_1_59_0.tar.gz
解压:
tar zxvf boost_1_59_0.tar.gz
8.编译MySQL的:
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=/usr/local/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 \-DWITH_BOOST=/home/boost_1_59_0
编译并且执行:make
检查编译:echo $?提示0即编译没问题
安装:make install
清除屏幕:make clean
查看是否有用户组:cat /etc/group
创建MySQL的用户组: groupadd mysql
将用户的MySQL天添加到MySQL的用户组(第一个MySQL的是用户组):useradd -g mysql mysql
修改MySQL的的权限: chown -R mysql:mysql /usr/local/mysql
进入MySQL的安装目录:cd /usr/local/mysql/bin
执行初始化配置脚本,创建系统自带的数据库和表:
./mysqld --initialize --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --user=mysql
此处会生成一个默认密码,一定要记下来:root @ localhost:yfagfl!T&6iq
复制文件:cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql
设置为开机自启:chkconfig mysql on
隐藏内容,您需要满足以下条件方可查看
启动mysql :( service mysql start
mysql具体启动程序在/etc/rc.d/init.d/mysql,注意有的时候不是mysql,可能是mysqld也可能是mysql)
查看MySQL的异常日志:安装路径下的/ usr /本地/ MySQL的/数据
9,配置用户
设置PATH
vi /etc/profile
在合适位置添加下面一行
PATH=$PATH:/usr/local/mysql/bin
生效:
source /etc/profile
查看:
echo $PATH
10,修改根密码默认
登录的MySQL:
mysql -uroot -p
输入安装时生成的默认密码回车
修改密码:
mysql>SET PASSWORD = PASSWORD('mysql5635');
刷新权限:
mysql>flush privileges;
设置mydba用户可以远程访问
MySQL的> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'mysql5635' WITH GRANT OPTION;
防火墙关闭: /etc/sysconfig/iptables stop
防火墙配置: vi /etc/sysconfig/iptables
加入
-A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT
11,补充
退出后重新在终端登录
[root @ localhost~]# mysql -uroot -p
bash:mysql:找不到命令
使用完整的路径可以登录
[root @ localhost~]#/usr/local/mysql/bin/mysql -uroot -p
(mysql登录的完整的路径在/ usr / local / mysql / bin / mysql -uroot -p)
输入密码:
最后建立一个软链接,其它常用命令中mysqladmin,mysqldump的等不可用时候都可按用此方法解决
[root @ localhost~]# ln -s /usr/local/mysql/bin/mysql /usr/bin
直接运行导出命令定义变量【只对当前外壳有效(临时的)】
[root @ VMUest~] #export PATH = / usr / local / mysql / bin:$ PATH
[root @ VMUest~] #echo $ PATH
它只对当前的外壳有效,因此刚配置时可以使用的MySQL,退出登录就不能使用。后来将出口写入到文件/ etc / profile文件,就可以永久有
naicat远程本地错误解决10061分析:
1.可能是防火墙没开
2.在等找到的my.cnf添加绑定地址= 0.0.0.0(窗口是的my.ini)
3在MySQL的设置权限:GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'mysql5635' WITH GRANT OPTION;
Centos6源码编译安装Mysql5.7.17教程各位快去操作一波吧!