1.其实源码安装mysql5.6并不需要过多的依赖,对于一台new server官网提示mysql5.6需要:
yum install -y gcc gcc-c++ make cmake ncurses-devel perl
2.官网下载mysql安装包到指定目录:/usr/local/src,自己喜欢放哪里就放哪里
wget -P /usr/local/src https://dev.mysql.com/get/Downloads/MySQL-5.6/mysql-5.6.45.tar.gz
3.根据官方创建mysql用户和组:
groupadd mysql && useradd -r -g mysql -s /bin/false mysql
4.进入下载文件目录并执行解压和编译
a.进入目录:cd /usr/local/src
b.解压5.6压缩包:tar zxvf mysql-5.6.45.tar.gz
c.根据官方文档建一个文件夹bld用来存放编译文件:mkdir bld && cd bld(原因是这样不会污染mysql源码,当遇到编译失败
的时候直接删掉bld文件夹中的文件再进行重新编译即可)
d.编译mysql,官方对选项有很细致的描述https://dev.mysql.com/doc/refman/5.6/en/source-configuration-options.html,
很多默认开启的选项这里没有再像网上一样写出来:
cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql
-DDEFAULT_CHARSET=utf8
-DDEFAULT_COLLATION=utf8_general_ci
-DENABLED_LOCAL_INFILE=1
-DMYSQL_DATADIR=/data/mysql
-DMYSQL_TCP_PORT=3306
-DSYSCONFDIR=/etc . .
e.安装mysql:make&&make install
f.安装之后给mysql用户授权自己对应自己的目录:
chown mysql:mysql /usr/local/mysql -R && chown mysql:mysql /data/mysql -R
g.初始化mysql:
/usr/local/mysql/scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql --defaults-file=/etc/my.cnf --datadir=/data/mysql
h.修改/etc/my.cnf,不存在就新建一个,我只是给了一个简单的模板,实际的根据自己来:
#修改了socket路径之后需要添加一个client,否则client登陆时会报错
[client]
socket=/data/mysql/mysql.sock
[mysqld]
user=mysql
datadir=/data/mysql
log-error=/var/log/mysqld.log
pid-file=/var/lib/mysql/mysql.pid
socket=/var/lib/mysql/mysql.sock
symbolic-links=0
[mysqld_safe]
datadir=/data/mysql
log-error=/var/log/mysqld.log
pid-file=/var/lib/mysql/mysql.pid
socket=/var/lib/mysql/mysql.sock
i.启动mysql,可以先做一个软连接到mysql安装目录ln -s /usr/local/mysql/bin/* /usr/bin:
mysqld &或者msyqld_safe &都可以启动
j.连接mysql:
第一次连接:mysql -u root
成功后改密码:use mysql;
update user set password=Password(‘your password’) where user=‘root’;
flush privileges;
exit;
第二次登陆:mysql -u root -p[password]
5.总结:如果mysql启动失败,检查授权,授权非常重要,因为采用的是mysql用户启动,如果使用mysqld启动没有日志错误日志生成就使用mysqld_safe启动,然后查看错误日志,如果提示找不到表,一般是授权问题,重新授权,如果还是不行,就删掉数据目录下的所有文件,重新初始化mysql,然后再启动,my.cnf记得要配置正确。
centos 6源码安装mysql 5.6
最新推荐文章于 2021-09-29 14:58:12 发布