从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的更多相关文章

  1. Linux平台下源码安装mysql多实例数据库

    Linux平台下源码安装mysql多实例数据库[root@linux-node1 ~]# netstat -tlunp | grep 330tcp6 0 0 :::3306 :::* LISTEN 6 ...

  2. CentOS 7下源码安装MySQL 5.7

    网上说linux安装mysql服务分两种安装方法: ①源码安装,优点是安装包比较小,只有几十M左右,缺点是安装依赖的库多,安装编译时间长,安装步骤复杂容易出错: ②使用官方编译好的二进制文件安装,优点 ...

  3. lnux下源码安装MySQL 5.6

    nux下源码安装MySQL 5.6 说明:本文是我自己测试的MySQL5.6源码安装,经本人亲自实践,完全可用,另在5.6之前的版本也是可以按照本文源码安装的.我是在两台linux下一台安装5.5,另 ...

  4. centos 6x系统下源码安装mysql操作记录

    在运维工作中经常部署各种运维环境,涉及mysql数据库的安装也是时常需要的.mysql数据库安装可以选择yum在线安装,但是这种安装的mysql一般是系统自带的,版本方面可能跟需求不太匹配.可以通过源 ...

  5. linux下源码安装netcat

    linux下源码安装netcat http://blog.chinaunix.net/uid-20783755-id-4211230.html 1,下载netcat源码,netcat-0.7.1-13 ...

  6. Linux下源码安装方式安装MySQL

    1.下载安装包:https://downloads.mysql.com/archives/community/  2.安装开发工具和安装包 因为要把源码编译成二进制数据,所以必须要有编译器和解释器 g ...

  7. CentOS 7下源码安装MySQL 5.6

    本文转载,并非原创. 目录 准备工作 运行环境 确认你的安装版本 下载MySQL 安装MySQL 准备安装环境 编译和安装 配置MySQL 单实例配置 单实例配置方法 添加防火墙 启动MySQL 重启 ...

  8. CentOS 6.5下源码安装MySQL 5.6

    变量lower_case_file_system说明是否数据目录所在的文件系统对文件名的大小写敏感.ON说明对文件名的大小写不敏感,OFF表示敏感. 在my.cnf中[mysqld]更改lower_c ...

  9. linux下源码安装软件

    在linux下的很多软件都是通过源码包方式发布的,这样做对于最终用户而言,虽然相对于二进制软件包,配置和编译起来繁琐点,但是它的可移植性却好得多,针对不同的体系结构,软件开发者往往仅需发布同一份源码包 ...

  10. Linux 下源码安装大杂烩

    本文仅以记录平常源码安装部分软件是需注意的关键点. 有时为了方便,如在 Ubuntu 系统中,采用 sudo apt-get install soft-version 来安装某一版本的软件显得更为便捷 ...

随机推荐

  1. Powershell - 获取服务器启动时间

    www.orangeisland.cn 使用以下命令,直接获取服务器启动时间: 通过以下脚本,批量获取服务器的启动时间: $TextPath = "C:\Users\admin\Deskto ...

  2. maven中配置jboss仓库

    有两种方式,一种是在项目的pom.xml中<repositories>中添加,这是配置是针对具体的某一个项目,更多时候,我们想把jboss仓库作为所有项目的仓库,这就需要在maven的se ...

  3. Liunx 用户权限之目录

    总结一下: 今天又对liunx权限的认知多了一点,就是关于目录的权限的作用 可以打个比方来形容就是:相当于一个大门 只有目录权限都有的情况下,才能够对目录中的文件进行目录权限操作 例如:drwxrwx ...

  4. STARTUPINFO结构体

    typedef struct _STARTUPINFO { DWORD cb; //包含STARTUPINFO结构中的字节数.如果Microsoft将来扩展该结构,它可用作版本控制手段.应用程序必须将 ...

  5. C++ 编码导致编译错误

    记录一个问题 平时经常用Notepad++写C++,然后g++编译 最近出现一个莫名其妙的问题 原来是编译时遇到了非法字符 用Notepad++一看,原来文件的编码出现的变化 不是UTF-8或者其他对 ...

  6. linux中more命令如何使用

         more命令,功能类似 cat ,cat命令是整个文件的内容从上到下显示在屏幕上.兄弟连Linux培训教程() more会以一页一页的显示方便使用者逐页阅读,而最基本的指令就是按空白键(sp ...

  7. jquery preventDefault()方法 语法

    jquery preventDefault()方法 语法 作用:preventDefault() 方法阻止元素发生默认的行为(例如,当点击提交按钮时阻止对表单的提交).大理石平台价格 语法:event ...

  8. POJ 3692 幼儿园做游戏 最大团 模板题

    Kindergarten Time Limit: 2000MS   Memory Limit: 65536K Total Submissions: 6191   Accepted: 3052 Desc ...

  9. (Java多线程系列五)守护线程

    守护线程 什么是守护线程 Java中有两种线程,一种是用户线程,一种是守护线程. 当进程不存在或主线程停止,守护线程也会自动停止. class DaemonThread extends Thread ...

  10. mybatis invalid bound statement (not found)

    Spring boot + Mybatis : Invalid bound statement (not found) 如果只在启动类上配置@MapperScan注解,默认只扫描和mapper接口同名 ...