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 来安装某一版本的软件显得更为便捷 ...
随机推荐
- RHEL6中LVM逻辑卷管理
1.LVM 基本术语 物理卷(physical volume):物理卷在逻辑卷管理中处于最底层,它可以是实际物理硬盘上的分区,也可以是整个物理硬盘. 卷组(Volume Group):卷组建立 ...
- 华为ensp问题:云映射本地网卡,直连路由器可以ping通,pc却不行?
拓扑图:cloud 云映射本机物理网卡:192.168.56.1 R1可以Ping通,所有Pc都不行,路由表也存在路由信息,不知道什么问题?
- Zookeeper的客户端使用
1.1 Zookeeper API(原生) 1)连接的创建是异步的,需要开发人员自行编码实现等待 2)连接没有超时自动的重连机制 3)Zookeeper本身没提供序列化机制,需要开发人员自行指定,从而 ...
- HDU4456-Crowd (坐标旋转处理+hash处理+二维树状数组)
题意: 给出一个矩阵,初始每个位置上的值都为0,然后有两种操作 一种是更改某个位置上的值 另一种是求某个位置附近曼哈顿距离不大于K的所有位置的值的总和 技巧: 坐标旋转,使得操作之后菱形变成方方正正的 ...
- http协议和i/o模型
http协议----基于请求报文和响应报文完成一次http事务 应用层协议格式有两种: 文本(开发容易,但交互解析困难如http smtp),二进制(交互解析容易,但理解起来困难memocache) ...
- vs2017 2019 下载更新慢的解决方法
国庆期间 下载的速度只有20多kb. 1.去掉网络适配器里面的 ip6勾选. 2.修改电脑的自动dns, 修改为1.1.1.1 , 修改为8.8.8.8 更快. 记得禁用再启用网络: dns为1. ...
- PHP关于对象访问静态方法、属性等问题
为何有这样的问题呢?源自一段代码,如下: class A { // public static $name = 'wangyumeidsb'; public $name = 'woaini'; pub ...
- C# 获取应用程序几种方式的区别
// 获取程序的基目录.System.AppDomain.CurrentDomain.BaseDirectory 这种方式 无论什么权限 获取的也只是应用程序的启动路径 // 获取模块 ...
- SpringBoot项目中,AOP的使用
Springboot中自带依赖 1.创建一个SellerAuthorizeAspect类,打上标签@Aspect和@Component @Aspect @Component @Slf4j public ...
- Codeforces 932 E Team Work ( 第二类斯特林数、下降阶乘幂、组合数学 )
题目链接 题意 : 其实就是要求 分析 : 先暴力将次方通过第二类斯特林数转化成下降幂 ( 套路?) 然后再一步步化简.使得最外层和 N 有关的 ∑ 划掉 这里有个技巧就是 将组合数的表达式放到一边. ...