Linux下源码安装MySQL-5.6.25
从mysql-5.5起,mysql源码安装开始使用cmake了,因此我们得先安装cmake,配置安装目录./configure --perfix=/.....的时候和以前的会有些区别。
一、安装cmake
将cmake-2.8.7.tar.gz包上传至/Software目录下,然后进行如下操作:
[root@Jerry Software]# tar –zxvf cmake-2.8..tar.gz
[root@Jerry Software]# mv cmake-2.8. /usr/local
[root@Jerry Software]# cd /usr/local/cmake-2.8.
[root@Jerry cmake-2.8.]#./configure –prefix=/usr/local/cmake
[root@Jerry cmake-2.8.]#make
[root@Jerry cmake-2.8.]#make install
配置cmake环境变量:
(1)修改/etc/profile文件,在文件内加入以下内容:
#cmake
PATH=/usr/local/cmake/bin:$PATH
export PATH
(2)执行命令source /etc/profile使cmake环境变量生效
二、安装MySQL
创建mysql的安装目录及数据库存放目录
[root@Jerry ~]#mkdir -p /usr/local/mysql //mysql安装目录
[root@Jerry ~]#mkdir -p /usr/local/mysql/data //数据库存储目录
创建mysql用户及用户组
[root@Jerry ~]#groupadd mysql
[root@Jerry ~]#useradd -r -g mysql mysql
安装MySQL
先将mysql-5.6.25.tar.gz包上传至/Software目录下,然后进行如下操作:
[root@Jerry Software]# tar –zxvf mysql-5.6..tar.gz
[root@Jerry Software]# mv mysql-5.6. /usr/local
[root@Jerry Software]# cd /usr/local/mysql-5.6.
[root@Jerry mysql-5.6.]# cmake . //cmake后有个“.”
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql
-DINSTALL_DATADIR=/usr/local/mysql/data
-DDEFAULT_CHARSET=utf8
-DDEFAULT_COLLATION=utf8_general_ci
-DEXTRA_CHARSETS=all
-DENABLED_LOCAL_INFILE= [root@Jerry mysql-5.6.]#make
[root@Jerry mysql-5.6.]#make install 参数说明:
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql //指定安装目录
-DINSTALL_DATADIR=/usr/local/mysql/data //指定数据库存放目录
-DDEFAULT_CHARSET=utf8 //使用utf8字符
-DDEFAULT_COLLATION=utf8_general_ci //校验字符
-DEXTRA_CHARSETS=all //安装所有扩展字符集
-DENABLED_LOCAL_INFILE= //允许从本地导入数据
注意事项:
编译报错通常是因为缺少依赖的包造成的,把缺少的包安装上再重新进行编译。重新编译时,需要清除旧的对象文件和缓存信息。
# make clean
# rm -f CMakeCache.txt
# rm -rf /etc/my.cnf
三、配置MySQL
设置目录权限
[root@ Jerry ~]# cd /usr/local/mysql
//把mysql目录中所有文件的所有者所有者设为root,所属组为mysql
[root@Jerry mysql]# chown -R root:mysql .
//把data目录中所有文件的所有者所有者设为mysql,所属组为mysql
[root@Jerry mysql]# chown -R mysql:mysql data
将mysql的启动服务添加到系统服务中
[root@Jerry mysql]# cp support-files/my-default.cnf /etc/my.cnf
创建系统数据库的表
[root@Jerry mysql]# cd /usr/local/mysql
[root@Jerry mysql]# scripts/mysql_install_db --user=mysql
设置环境变量
[root@ Jerry ~]# vi /root/.bash_profile
在PATH=$PATH:$HOME/bin添加参数为:
PATH=$PATH:$HOME/bin:/usr/local/mysql/bin:/usr/local/mysql/lib
[root@ Jerry ~]#source /root/.bash_profile
四、启动MySQL
手动启动
[root@ Jerry ~]#cd /usr/local/mysql
//启动MySQL,但不能停止
[root@ Jerry mysql]#./bin/mysqld_safe --user=mysql &
启动日志写在此文件下:/usr/local/mysql/data/localhost.err
[root@ Jerry mysql]# mysqladmin -u root -p shutdown //关闭MySQL服务
//这里MySQL的root用户还没有配置密码,所以为空值。输入密码时,直接点回车键即可。
将mysql的启动服务添加到系统服务
[root@Jerry mysql]#cp support-files/mysql.server /etc/init.d/mysql
//注意:这里是将mysql.server拷贝到/etc/init.d目录下,命名为mysql。在有的系统中,mysql.server在/usr/local/mysql/share/mysql/mysql.server中,而本系统中,mysql.server在/usr/local/mysql/support-files/mysql.server中。
使用服务命令启动
[root@Jerry ~]# service mysql start //启动
[root@Jerry ~]# service mysql stop //停止
[root@Jerry ~]# service mysql restart //重启
设置开机自动启动MySQL
//将服务文件拷贝到init.d下,并重命名为mysql
cp support-files/mysql.server /etc/init.d/mysql //这一步上面已经操作 //赋予可执行权限
chmod +x /etc/init.d/mysql //添加服务
chkconfig --add mysql //显示服务列表
chkconfig --list

如果看到mysql的服务,并且3,4,5都是on的话则成功,如果是off,则键入:
chkconfig --level mysql on
重启服务器
reboot
验证
ps -ef|grep mysql
五、登录MySQL
此时,root用户暂未创建密码,可以使用如下命令登录MySQL:
mysql -u root -p
通常第一次会报错:-bash: mysql: command not found。这是因为系统默认会查找/usr/bin下的命令,如果mysql这个命令不在这个目录下,就会找不到命令,我们需要做的就是映射一个链接到/usr/bin目录下,相当于建立一个链接文件,如下:
ln -s /usr/local/mysql/bin/mysql /usr/bin
再次执行登录命令,输入密码直接回车即可登录MySQL
六、为Root用户创建登录密码和远程连接权限
创建密码
//设置mysql root用户登录密码,‘xxxxxx’中的密码为设置的密码
mysql>update user set Password = password('') where User='root';
远程连接
//为root添加远程连接的权限
mysql>grant all Privileges on *.* to root@"%" identified by "";
mysql>flush privileges;
mysql>exit;
如果还是不能远程连接,则关闭服务器防火墙,如下:
service iptables stop
Linux下源码安装MySQL-5.6.25的更多相关文章
- Linux平台下源码安装mysql多实例数据库
Linux平台下源码安装mysql多实例数据库[root@linux-node1 ~]# netstat -tlunp | grep 330tcp6 0 0 :::3306 :::* LISTEN 6 ...
- CentOS 7下源码安装MySQL 5.7
网上说linux安装mysql服务分两种安装方法: ①源码安装,优点是安装包比较小,只有几十M左右,缺点是安装依赖的库多,安装编译时间长,安装步骤复杂容易出错: ②使用官方编译好的二进制文件安装,优点 ...
- lnux下源码安装MySQL 5.6
nux下源码安装MySQL 5.6 说明:本文是我自己测试的MySQL5.6源码安装,经本人亲自实践,完全可用,另在5.6之前的版本也是可以按照本文源码安装的.我是在两台linux下一台安装5.5,另 ...
- centos 6x系统下源码安装mysql操作记录
在运维工作中经常部署各种运维环境,涉及mysql数据库的安装也是时常需要的.mysql数据库安装可以选择yum在线安装,但是这种安装的mysql一般是系统自带的,版本方面可能跟需求不太匹配.可以通过源 ...
- linux下源码安装netcat
linux下源码安装netcat http://blog.chinaunix.net/uid-20783755-id-4211230.html 1,下载netcat源码,netcat-0.7.1-13 ...
- Linux下源码安装方式安装MySQL
1.下载安装包:https://downloads.mysql.com/archives/community/ 2.安装开发工具和安装包 因为要把源码编译成二进制数据,所以必须要有编译器和解释器 g ...
- CentOS 7下源码安装MySQL 5.6
本文转载,并非原创. 目录 准备工作 运行环境 确认你的安装版本 下载MySQL 安装MySQL 准备安装环境 编译和安装 配置MySQL 单实例配置 单实例配置方法 添加防火墙 启动MySQL 重启 ...
- CentOS 6.5下源码安装MySQL 5.6
变量lower_case_file_system说明是否数据目录所在的文件系统对文件名的大小写敏感.ON说明对文件名的大小写不敏感,OFF表示敏感. 在my.cnf中[mysqld]更改lower_c ...
- linux下源码安装软件
在linux下的很多软件都是通过源码包方式发布的,这样做对于最终用户而言,虽然相对于二进制软件包,配置和编译起来繁琐点,但是它的可移植性却好得多,针对不同的体系结构,软件开发者往往仅需发布同一份源码包 ...
- Linux 下源码安装大杂烩
本文仅以记录平常源码安装部分软件是需注意的关键点. 有时为了方便,如在 Ubuntu 系统中,采用 sudo apt-get install soft-version 来安装某一版本的软件显得更为便捷 ...
随机推荐
- css文件分类
简介 CSS(层叠样式表)是一门历史悠久的标记性语言,同 HTML 一道,被广泛应用于万维网(World Wide Web)中.HTML 主要负责文档结构的定义,CSS 负责文档表现形式或样式的定义. ...
- Acwing-100-IncDec序列(差分)
链接: https://www.acwing.com/problem/content/102/ 题意: 给定一个长度为 n 的数列 a1,a2,-,an,每次可以选择一个区间 [l,r],使下标在这个 ...
- 通俗易懂的例子解释 IAAS、SAAS、PAAS 的区别
你一定听说过云计算中的三个“高大上”的你一定听说过云计算中的三个“高大上”的概念:IaaS.PaaS和SaaS,这几个术语并不好理解.不过,如果你是个吃货,还喜欢披萨,这个问题就好解决了!好吧,其实你 ...
- fetch 写法
fetch("../students.json").then(function(response){ if(response.status!==200){ console.log( ...
- python re.match与re.search的区别
re.match只匹配字符串的开始,如果字符串开始不符合正则表达式,则匹配失败,函数返回None:而re.search匹配整个字符串,直到找到一个匹配. #!/usr/bin/python impor ...
- Java多线程和并发(十),JMM(Java内存模型)
目录 1.什么是JMM 2.JMM的主内存和工作内存 3.JMM如何解决可见性问题-指令重排序 4.Volatile 十.JMM(Java内存模型)(暂时没有理解) 1.什么是JMM 2.JMM的主内 ...
- CF873F Forbidden Indices 后缀自动机+水题
刷刷水~ Code: #include <cstdio> #include <cstring> #include <algorithm> #define N 200 ...
- AngularJS基础语法
1.ng-app 决定了angularjs的作用域范围,你可以如下使用: <html ng-app> … </html> 来让angularjs渲染整个页面,也可以使用 < ...
- 哈密尔顿环x
欧拉回路是指不重复地走过所有路径的回路,而哈密尔顿环是指不重复地走过所有的点,并且最后还能回到起点的回路. 代码如下: #include<iostream> #include<cs ...
- tomcat 散点杂记
tomcat有很多细碎的知识点和一些坑点,我将再次记录 域名直指项目 我们经常访问项目都要带上项目目录 eg: http://xwiki.test.com/xwiki or http://jenkin ...