最近在研究Mysql,当然先要把它安装在机器上才行呀。记录下操作,加深记忆,也供以后参考。


准备工作:

Linux版本:Redhat Linux 6.4

Mysql版本(安装包):mysql-5.6.16.tar.gz

采取的安装方式:采用Cmake进行编译安装,所以先要安装Cmake才行。

Cmake版本(安装包):cmake-2.8.12.2.tar.gz


1、安装Cmake

  • Cmake的安装所需要的依赖关系,我就采用yum安装,直接搞定了:

yum -y install ntp vim-enhanced gcc gcc-c++ flex bison autoconf automake bzip2-devel ncurses-devel zlib-devel libjpeg-devel libpng-devel libtiff-devel freetype-devel libXpm-devel gettext-devel  pam-devel libtool libtool-ltdl openssl openssl-devel fontconfig-devel libxml2-devel curl-devel  libicu libicu-devel libmcrypt libmcrypt-devel libmhash libmhash-devel

  • 编译安装Cmake

# tar zxvf cmake-2.8.12.2.tar.gz  (解压安装包)

# cd cmake-2.8.12.2     (进入解压后安装包)

# ./configure           (configure下)

# make && make install     (make 下)

结束后,用 cmake -version 命查看是否安装成功啦。

2、安装Mysql

试想一下,等mysql安装成功后,由哪个用户来启动Mysql呢?以root吗,万一Mysql被攻破了,root用户岂不是很不安全。从一本书中看到一句话:Mysql服务器在Unix下启动的两个要求是:1、以root以外的其它用户来启动。2、以固定的一个用户来启动mysql。所以,我们先要创建mysql用户跟用户组,且将安装目录的所属用户用户组也更改为mysql。

  • 创建所需要的文件目录

# mkdir -pv /usr/local/mysql/data      (准备将Mysql安装在这个目录下)

  • 创建所需要用户与用户组

# groupadd mysql            (创建用mysql用户组)

# useradd -g mysql -s /sbin/nologin mysql     (创建mysql用户,且属于mysql用户组,shell为nologin)   

# chown mysql.mysql /usr/local/mysql/data -R (将刚创建的安装目录的所属用户跟用户组更改为mysql)

# mkdir -pv /etc/mysql          

# chown mysql.mysql /etc/mysql -R  

  • 安装目录,用户,用户组创建完完毕后,开始mysql的正式安装。

# tar zxvf mysql-5.6.16.tar.gz      (解压安装包)

# cd mysql-5.6.16             (进入安装包)

  • 接下来进行Cmake编译

# cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/usr/local/mysql/data -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_unicode_ci -DWITH_READLINE=1 -DSYSCONFDIR=/etc/mysql -DMYSQL_UNIX_ADDR=/etc/mysql/mysqld.sock -DWITH_EMBEDDED_SERVER=0 -DENABLED_LOCAL_INFILE=1  -DMYSQL_USER=mysql -DDEFAULT_COLLATION=utf8_general_ci -DWITH_MYISAM_STORAGE_ENGINE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_DEBUG=0

# make && make install         (安装)

等待安装。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。

  • 安装完后,进行mysql的各种配置

# cp support-files/my-default.cnf /etc/my.cnf       (将 mysql-5.6.16安装包里的my-default.cnf文件覆盖 /etc/my.cnf)

# cp support-files/mysql.server /etc/init.d/mysqld    (将 mysql-5.6.16安装包里的mysql.server 复制到/etc/init.d/mysqld,mysql.server是启动脚本,用于以后启动Mysql)

# chmod +x /etc/init.d/mysqld             (增加mysqld文件的可执行权限) 

# chkconfig --add mysqld              

# chkconfig mysqld on                (设置开机时自动启动)

  • 配置/etc/my.cnf文件

在[mysqld]中添加:

datadir = /usr/local/mysql/data

log-error = /usr/local/mysql/data/error.log

pid-file = /usr/local/mysql/data/mysql.pid

user = mysql

tmpdir = /tmp

保存退出

  • #初始化数据库

# /usr/local/mysql/scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data

  • #手动启动MySQL

# /etc/init.d/mysqld start

  • 添加环境变量

# vi /etc/profile           (打开profile文件)

在里面添加:PATH=$PATH:/usr/local/mysql/bin

保存退出

# source /etc/profile        (重读profile文件)

  • 进入mysql ,修改root密码

# mysql -uroot         (这时的root还没有密码,直接回车就可进入)

mysql> set password = password("**********");    (红色处为要设置的密码)

打完收工!

Linux 下编译安装MySQL的更多相关文章

  1. Linux下编译安装MySQL

    一.环境准备yum install -y ncurses-devel libaio-develyum install -y cmake makeuseradd -s /sbin/nologin -M ...

  2. CentOS Linux下编译安装MySQL

    本文参考张宴的Nginx 0.8.x + PHP 5.2.13(FastCGI)搭建胜过Apache十倍的Web服务器(第6版)[原创]完成.所有操作命令都在CentOS 6.4 64位操作系统下实践 ...

  3. linux下 编译安装Mysql

    正文: 一:卸载旧版本 使用下面的命令检查是否安装有MySQL Server rpm -qa | grep mysql 有的话通过下面的命令来卸载掉 rpm -e mysql //普通删除模式 rpm ...

  4. Linux下编译安装mysql数据库服务

    以下是用putty工具远程登录到服务器,在命令行下面操作: Cmake工具下载地址:http://ftp.lfs-matrix.net/pub/blfs/conglomeration/cmake/ M ...

  5. Linux下yum安装MySQL

    写这篇文章的原因是:在刚开始使用Linux操作系统时想要搭建LAMP环境,于是开始在Google和百度上各种寻找资料,碰到了不是很多的问题后,我决定写这篇文章总结一下在Linux下yum安装MySQL ...

  6. LINUX下编译安装PHP各种报错大集合

    本文为大家整理汇总了一些linux下编译安装php各种报错大集合 ,感兴趣的同学参考下. nginx1.6.2-mysql5.5.32二进制,php安装报错解决: 123456 [root@clien ...

  7. linux下如何安装mysql和redis

    linux下如何安装mysql(mariadb) linux下如何安装软件? 1. yum安装软件也得注意,一个是配置yum源 1.我们当前的是阿里云的yum源(下载速度特别快) 通过 yum ins ...

  8. linux下编译安装vim7.4并安装clang_complete插件

    linux下编译安装vim7.4并安装clang_complete插件 因为debian里软件仓库中下载安装的vim是不支持python写的插件的(可以打开vim,在命令模式先输入:py测试一下),导 ...

  9. linux下编译安装curl

    linux下编译安装curl 1.下载curl git clone https://github.com/curl/curl.git 2.在curl目录下生成configure文件 ./buldcon ...

随机推荐

  1. java 中关于synchronized的通常用法

    package j2se.thread.test; /*** * synchronized(class)很特别,它会让另一个线程在任何需要获取class做为monitor的地方等待. * class与 ...

  2. 前端开发week2

    从网页布局看思维方式以及思维方式对于前端制作的重要性 经过了两个星期的学习,对于静态网页的制作也已经有了比较完整的理论知识和实践基础,技术层面的东西固然还是很重要.是最基础的,但是在实际制作网页的过程 ...

  3. C# unity3d 贪吃蛇 游戏 源码 及其感想

    这个游戏的设计过程是这样的: 1,创建

  4. jquery.get()

    1.获取当前jquery对象匹配到的dom元素 2.语法: jqueryObject.get([index]) //jQueryObject[index]等价于jQueryObject.get(ind ...

  5. C#版的mongodb最新的官方驱动2.4.0版本

    已经升级了mongodb至最新的3.4的版本,我想想也该把驱动升到最新的了,我用的驱动还是1.7的版本呢,之前几次想升级,都是因为升级驱动需要改动的代码太大了,升级的成本很高,所以懒得动,就这么的用了 ...

  6. SQL注入:突破关键字过滤

    一直以来都以为只有空格,tab键和注释符/**/可以用来切割sql关键字,段时间在邪八看了风迅cms注入漏洞那篇帖子,才知道原来回车也可以用来作为分割符(以前竟然没有想到,真是失败).回车的ascii ...

  7. shopex 小知识

    产品链接: http://www.--/product-172.html 中间的数字代表  sdb_goods 表中 的 goods_id  ... 表示数据库里的产品 id. 分类链接: http: ...

  8. DOM扩展之 HTML5

    11.3.1 与类相关的扩充 2. classList属性 在操作类名时,需要通过className属性添加,删除和替换类名.因为className是一个字符串,所以即使只修改一部分内容也要设置整个字 ...

  9. UITabBarController使用总结

    刚看了几天教程就开始跟着开发了,以前也没学过C,太痛苦了~只能看看大神的博客,自己再总结学习一下了. 1.首先新建一个TabBarViewController继承于UITabBarController ...

  10. Python学习路程day18

    Python之路,Day18 - Django适当进阶篇 本节内容 学员管理系统练习 Django ORM操作进阶 用户认证 Django练习小项目:学员管理系统设计开发 带着项目需求学习是最有趣和效 ...