MySQL 5.6.40的二进制和编译安装
1、准备工作
安装之前注意是否已经安装过了
查看系统和是否安装mysql,如果已经安装过,需要确认会不会影响。
cat /etc/redhat-releaseyum list installed | grep mysql
2、安装
安装这里主要介绍二进制(类似windows绿色版)和编译安装。
安装方式一:二进制安装
二进制安装主要步骤有创建用户、赋权、配置文件、初始化、修改路径、起库
wget https://dev.mysql.com/get/Downloads/MySQL-5.6/mysql-5.6.40-linux-glibc2.12-x86_64.tar.gz2、解压二进制包tar -zxvf mysql-5.6.40-linux-glibc2.12-x86_64.tar.gzmkdir /application4、移动解压包到安装目录并改名mv mysql-5.6.40-linux-glibc2.12-x86_64 /application/mysql-5.6.405、软连接,升级方便,包换了改软连接即可ln -s /application/mysql-5.6.40 /application/mysqlcd /application/mysql7、里面是启动脚本及配置文件cd support-files/cp my-default.cnf /etc/my.cnf &&cp mysql.server /etc/init.d/mysqld8和9一起执行:cp my-default.cnf /etc/my.cnf && cp mysql.server /etc/init.d/mysqld--失败,没有初始化startcd /application/mysql/scripts/12、创建mysql用户 不允许登录,不创建家目录mysql -s /sbin/nologin -M--初始化后有2个ok表示初始化就成功了install autoconf--user=mysql --basedir=/application/mysql --datadir=/application/mysql/data还是报错,授权start15、赋权chown -R mysql.mysql /application/mysql*16、再启动,还是报错,目录不对/etc/init.d/mysqld start17、修改启动脚本及程序路劲脚本,替换路劲(都是改的启动脚本)-i 's#/usr/local#/application#g' /etc/init.d/mysqld /application/mysql/bin/mysqld_safe报错,发现mariadb没有关闭。关闭mariadb,启动成功start/stop mariadb.servicestart 或者service mysqld status19、设置环境变量,mysqld_safe依赖这个vim /etc/profile.d/mysql.shexport PATH="/application/mysql/bin:$PATH"20、source /etc/profile21、二进制安装默认pid在/tmp目录下,启动mysql就有了22、登陆-ef|grep mysql然后输入mysql命令即可user,host,password from mysql.user;23、初始化密码-uroot password '123'
安装方式二:源码安装
1、下载wget https://dev.mysql.com/get/Downloads/MySQL-5.6/mysql-5.6.40.tar.gztar -zxvf mysql-5.6.40.tar.gz3、移到安装目录mkdir /appli && mv mysql-5.6.40 /appli4、安装依赖环境yum install ncurses-devel libaio-devel cmakeyum install gcc gcc-c++ ncurses-devel perlyum install git gcc gcc-c++ ncurses-devel bison5、创建mysql用户/appli/mysql-5.6.40/ 生成,设置路劲什么的。cmake . -DCMAKE_INSTALL_PREFIX=/appli/mysql-5.6.40 \-DMYSQL_DATADIR=/appli/mysql-5.6.40/data \-DMYSQL_UNIX_ADDR=/appli/mysql-5.6.40/tmp/mysql.sock \-DDEFAULT_CHARSET=utf8 \-DDEFAULT_COLLATION=utf8_general_ci \-DWITH_EXTRA_CHARSETS=all \-DWITH_INNOBASE_STORAGE_ENGINE=1 \-DWITH_FEDERATED_STORAGE_ENGINE=1 \-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \-DWITHOUT_EXAMPLE_STORAGE_ENGINE=1 \-DWITH_ZLIB=bundled \-DWITH_SSL=bundled \-DENABLED_LOCAL_INFILE=1 \-DWITH_EMBEDDED_SERVER=1 \-DENABLE_DOWNLOADS=1 \-DWITH_DEBUG=0编译8、make install 安装,无报错用 echo $? 检查返回0就表示编译成功很久的等待下面操作和二进制安装一样9、软连接ln -s /appli/mysql-5.6.40 /appli/mysqlsupport-files/my-default.cnf /etc/my.cnfmysql.server /etc/init.d/mysqld13、这里不需要替换路劲,安装编译安装,安装时指定路劲了/etc/init.d/mysqld start,报错pid目录没有创建,手工创建,并授权对比二进制就不用创建,二进制默认放在tmp目录下面的。15、初始化,启动不成功肯定找不到pid,看报错日志在客户端和服务器都要指定mysql.sockchmod 755 mysql_install_dbchmod +x /appli/mysq*初始化cd /appli/mysql-5.6.40/scripts--user=mysql --basedir=/appli/mysql-5.6.40 --datadir=/appli/mysql-5.6.40/data ---------------2个ok就没有问题16、进入mysql,多实例需要加S参数,my.cnf里面mysql和mysqld都要指定mysql.sock位置-S /appli/mysql-5.6.40/tmp/mysql.sockvim /etc/profile.d/mysql.shexport PATH="/appli/mysql1/bin:$PATH"17、加到systemctl命令里面centos6:nginx reload 重新加载配置文件reload不用重启服务,直接重新加载配置文件,客户端感觉不到服务异常,平滑切换。centos7:daemon-reload18、mysql启动方式/etc/init.d/mysqld startsystemctl /usr/lib/systemd/system/mysqld.service19、初始化密码-uroot password '123'
