相比较于MySQL的源代码安装来说。免编译二进制包的速度实在是快了太多,而且性能损失也不是很大,同时具有一定的定制性。所以,如果没有特殊的

需求,尽量用MySQL免编译二进制包来安装MySQL。

1.下载软件包

# 5.6版本应该都是可以的。具体版本自己选
# http://mirrors.163.com/mysql/Downloads/MySQL-5.6/
用的mysql-5.6.38-linux-glibc2.12-x86_64.tar.gz

2.依赖包安装

yum -y install libaio

3.进入/usr/local/src

cd /usr/local/src/

4.解压软件包

tar -xvf mysql-5.6.38-linux-glibc2.12-x86_64.tar.gz

5.将解压后的软件包移动到/usr/local并改名为mysql

mv mysql-5.6.38-linux-glibc2.12-x86_64 /usr/local/mysql

6.进入/usr/local/mysql

cd /usr/local/mysql

7.新建用户和数据目录

useradd -M  -s /sbin/nologin mysql
id mysql
mkdir -p /data/mysql
chown -R mysql:mysql /data/mysql

8.初始化mysql

./scripts/mysql_install_db --user=mysql --datadir=/data/mysql

9.修改配置文件

mv /etc/my.cnf /etc/my.mariadb.cnf.bak
cp /usr/local/mysql/support-files/my-default.cnf /etc/my.cnf sed -i 's@# basedir =@basedir = /usr/local/mysql@' /etc/my.cnf
sed -i 's@# datadir =@datadir = /data/mysql@' /etc/my.cnf
sed -i 's@# socket =@socket = /tmp/mysql.sock@' /etc/my.cnf

10.拷贝/usr/local/mysql/suppsupport-files/mysql.server启动脚本到/etc/init.d下

#需在/usc/local/mysql目录下
cp ./support-files/mysql.server /etc/init.d/mysqld

11.编辑 mysqld脚本

#修改如下内容
sed -i 's@basedir=$@basedir=/usr/local/mysql@' /etc/init.d/mysqld
sed -i 's@datadir=$@datadir=/data/mysql@' /etc/init.d/mysqld

12.将mysql设置为开机启动

# cd /etc/init.d/
chkconfig --add mysqld
chkconfig --list

13.设置PATH,否则不能直接调用mysql,修改/etc/profile文件,在文件末尾添加

echo 'export PATH=/usr/local/mysql/bin:$PATH' >>/etc/profile
#添加环境变量后,source或 . 生效
source /etc/profile
  1. 验证
/etc/init.d/mysqld start
netstat -nltup | grep :3306
ps aux | grep mysqld
lsof -i :3306

QA

Error: Installing MySQL system tables..../bin/mysqld: error while loading shared libraries: libaio.so.1: cannot open shared object file: No such file or directory

解决:

yum -y install libaio

最新文章

  1. Linux神器之Strace的实践(Ubuntu上服务幽灵般的消失)
  2. Appboy 基于 MongoDB 的数据密集型实践
  3. php error file_get_contents()
  4. MITK-Qt4.8.4(x64)+VS2012+Win7_X64 编译记录
  5. odoo8 email
  6. 有关UNICODE、ANSI字符集和相关字符串操作
  7. BZOJ-2150部落战争(最小路径覆盖)
  8. Nginx+Tomcat+Redis实现持久会话
  9. [HAOI 2007]理想的正方形
  10. Java技术栈思维导图
  11. Asp.net Core 使用Jenkins + Dockor 实现持续集成、自动化部署(一):Jenkins安装
  12. 解决Protobuf生成的C#代码命名不规范问题
  13. <a></a>标签传参出现乱码问题
  14. 解决Win8系统修改IP地址后保存不了的方法
  15. windows应急响应入侵排查思路
  16. HTTP请求格式和HTTP响应格式
  17. YAML的使用
  18. Ora-1157 ora-1110错误解决案例一枚
  19. Java设计原则—接口隔离原则(转)
  20. Go 入门 - 方法和接口

热门文章

  1. 记 Swagger 2
  2. kotlin 委托
  3. Lab 11-3
  4. android -------- 沉浸式状态栏和沉浸式导航栏(ImmersionBar)
  5. jmeter csv 参数化
  6. img标签和 background 属性的使用分析
  7. 一个空格引起的错误。 python
  8. CentOS 7 配置nginx并默认强制使用https对http进行跳转
  9. Could not autowire. No beans of 'xxxx' type found的错误
  10. 转: Qt信号槽实现原理 清晰明了