1、准备

cmake-3.6.0.tar.gz

bison-3.0.4.tar.gz

mysql-5.7.13.tar.gz (http://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.13.tar.gz)

2、安装cmake 和 bison

首先可以查看下是否安装了 cmake

# rpm -qa |grep cmake 
# tar zxvf cmake-3.6.0.tar.gz
# cd cmake-3.6.0
# ./bootstrap
# make && make install
# tar zxvf bison-3.0.4.tar.gz
# cd bison-3.0.4
# ./configure
# make && make install

3、安装Mysql

[root@localhost src]# mkdir -p /usr/local/mysql #Mysql安装目录
[root@localhost src]# mkdir -p /data/mysqldb #Mysql数据库数据文件目录
[root@localhost src]# tar -zxvf mysql-5.7.13.tar.gz
[root@localhost src]# cd mysql-5.7. [root@localhost mysql-5.7.]# cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock -DDEFAULT_CHARSET=gbk -DDEFAULT_COLLATION=gbk_chinese_ci -DWITH_INNOBASE_STORAGE_ENGINE= -DWITH_ARCHIVE_STORAGE_ENGINE= -DWITH_BLACKHOLE_STORAGE_ENGINE= -DMYSQL_DATADIR=/data/mysqldb -DMYSQL_TCP_PORT= -DENABLE_DOWNLOADS= ... CMake Error at cmake/boost.cmake: (MESSAGE): You can download it with -DDOWNLOAD_BOOST= -DWITH_BOOST=<directory> This CMake script will look for boost in <directory>. If it is not there, it will download and unpack it (in that directory) for you. If you are inside a firewall, you may need to use an http proxy: export http_proxy=http://example.com:80  Call Stack (most recent call first): cmake/boost.cmake: (COULD_NOT_FIND_BOOST) CMakeLists.txt: (INCLUDE) -- Configuring incomplete, errors occurred!
-DCMAKE_INSTALL_PREFIX=dir_name 设置mysql安装目录
-DMYSQL_UNIX_ADDR=file_name 设置监听套接字路径,这必须是一个绝对路径名。默认为/tmp/mysql.sock
-DDEFAULT_CHARSET=charset_name 设置服务器的字符集。
缺省情况下,MySQL使用latin1的(CP1252西欧)字符集。cmake/character_sets.cmake文件包含允许的字符集名称列表。
-DDEFAULT_COLLATION=collation_name 设置服务器的排序规则。
-DWITH_INNOBASE_STORAGE_ENGINE=1 
-DWITH_ARCHIVE_STORAGE_ENGINE=1
-DWITH_BLACKHOLE_STORAGE_ENGINE=1 
-DWITH_PERFSCHEMA_STORAGE_ENGINE=1
存储引擎选项:

MyISAM,MERGE,MEMORY,和CSV引擎是默认编译到服务器中,并不需要明确地安装。

静态编译一个存储引擎到服务器,使用-DWITH_engine_STORAGE_ENGINE= 1

可用的存储引擎值有:ARCHIVE, BLACKHOLE, EXAMPLE, FEDERATED, INNOBASE (InnoDB),
PARTITION (partitioning support), 和PERFSCHEMA (Performance Schema)

-DMYSQL_DATADIR=dir_name 设置mysql数据库文件目录
-DMYSQL_TCP_PORT=port_num 设置mysql服务器监听端口,默认为3306
-DENABLE_DOWNLOADS=bool 是否要下载可选的文件。例如,启用此选项(设置为1),cmake将下载谷歌所使用的测试套件运行单元测试。

注:重新运行配置,需要删除CMakeCache.txt文件

<<==========================================================================

解决:

(1)在预编译时添加相应的选项:cmake -DDOWNLOAD_BOOST=1 -DWITH_BOOST=/usr/local/boost

(2)或者下载一个boost包,放到/usr/local/boost目录下,然后在cmake后面加选项-DWITH_BOOST=/usr/local/boost

==========================================================================>>

[root@localhost mysql-5.7.13]# cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock -DDEFAULT_CHARSET=gbk -DDEFAULT_COLLATION=gbk_chinese_ci -DWITH_INNOBASE_STORAGE_ENGINE= -DWITH_ARCHIVE_STORAGE_ENGINE= -DWITH_BLACKHOLE_STORAGE_ENGINE= -DMYSQL_DATADIR=/data/mysqldb -DMYSQL_TCP_PORT= -DENABLE_DOWNLOADS= -DDOWNLOAD_BOOST= -DWITH_BOOST=/usr/local/boost
  .... 
  CMake Error at cmake/readline.cmake:64 (MESSAGE):
  Curses library not found.  Please install appropriate package,

remove CMakeCache.txt and rerun cmake.On Debian/Ubuntu, package name is libncurses5-dev, on Redhat and derivates it is ncurses-devel.
  Call Stack (most recent call first):
  cmake/readline.cmake:107 (FIND_CURSES)
  cmake/readline.cmake:181 (MYSQL_USE_BUNDLED_EDITLINE)
  CMakeLists.txt:479 (MYSQL_CHECK_EDITLINE)

-- Configuring incomplete, errors occurred!
  See also "/usr/local/src/mysql-5.7.13/CMakeFiles/CMakeOutput.log".

  See also "/usr/local/src/mysql-5.7.13/CMakeFiles/CMakeError.log".

<<=========================================================================

解决:

(1)安装ncurses-devel

yum -y install ncurses-devel

(2)删除CMakeCache.txt

rm CMakeCache.txt

(3)重新cmake

[root@localhost mysql-5.7.]# cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_UNIX_ADDR=mysql.mysql -DDEFAULT_CHARSET=gbk -DDEFAULT_COLLATION=gbk_chinese_ci -DWITH_INNOBASE_STORAGE_ENGINE= -DWITH_ARCHIVE_STORAGE_ENGINE= -DWITH_BLACKHOLE_STORAGE_ENGINE= -DMYSQL_DATADIR=/data/mysqldb -DMYSQL_TCP_PORT= -DENABLE_DOWNLOADS= -DDOWNLOAD_BOOST= -DWITH_BOOST=/usr/local/boost

==========================================================================>>

[root@localhost mysql-5.7.]# make
[root@localhost mysql-5.7.13]# make install

修改Mysql目录所有者和组

[root@localhost]# cd /usr/local/mysql 
[root@localhost mysql]# chown -r mysql:mysql .
[root@localhost mysql]# cd /data/mysqldb
[root@localhost mysqldb]# chown -r mysql:mysql .

初始化Mysql数据库

[root@localhost mysql]# bin/mysql_install_db --user=mysql --datadir=/data/mysqldb 

复制Mysql服务器启动配置文件

[root@localhost mysql]# cp /usr/local/mysql/support-files/my-default.cnf /etc/my.cnf
[root@localhost mysql]# vim /etc/my.cnf #修改配置文件
[mysqld]
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
[client]
socket = /usr/local/mysql/mysql.sock

复制Mysql服务器启动脚本

[root@localhost mysql]# cp support-files/mysql.server /etc/init.d/mysqld 

配置PATH路径

[root@localhost mysql]# vim /etc/profile
PATH=/usr/local/mysql/bin:/usr/local/mysql/lib:$PATH
export PATH
[root@localhost mysql]# source /etc/profile

启动服务

[root@localhost mysql]# service mysqld start

登录Mysql

[root@localhost ~]# mysql -u root -p

修改Mysql用户密码

[root@localhost bin]# ./mysqladmin -u root -p password
Enter password:
New password:
Confirm new password:

Mysql5.7 mysql.user表 中没有password字段,用authentication_string 代替。

可能遇到的问题:

1、navicat连接报错

mysql> update user set host = '%' where user='root';
Query OK, row affected (0.00 sec)
Rows matched: Changed: Warnings:

重启Mysql服务!

2、安装pdo_mysql扩展

[root@localhost lib]# cd /usr/local/mysql/lib/
[root@localhost lib]# ll
total
-rw-r--r--. mysql mysql Jul : libmysqlclient.a
lrwxrwxrwx. mysql mysql Jul : libmysqlclient.so -> libmysqlclient.so.
lrwxrwxrwx. mysql mysql Jul : libmysqlclient.so. -> libmysqlclient.so.20.3.
-rwxr-xr-x. mysql mysql Jul : libmysqlclient.so.20.3.
-rw-r--r--. mysql mysql Jul : libmysqld.a
-rw-r--r--. mysql mysql Jul : libmysqlservices.a
drwxr-xr-x. mysql mysql Jul : pkgconfig
drwxr-xr-x. mysql mysql Jul : plugin

建软连接

[root@localhost lib]# ln -s /usr/local/mysql/lib/libmysqlclient.so. /usr/lib/

3、设置数据库默认编码

修改my.cnf

[mysqld]
character-set-server=utf8
[mysql]
default-character-set=utf8
[client]
default-character-set=utf8

重启服务。

“set names utf8”

linux Mysql 安装及配置的更多相关文章

  1. Linux MySql 安装与配置

    为什么选择MySQL数据库? 毫无疑问,绝大多数的使用linux操作系统的大中小型互联网网站都在使用MySQL作为其后端的数据库存储,从大型的BAT门户,到电商平台,分类门户等无一例都使用MySQL数 ...

  2. Linux下MySQL安装和配置

    --Linux下MySQL安装和配置 ---------------------------2014/05/18 Linux下MySQL的配置和安装 本文的安装采用 rpm 包安装 1.首先在官网下载 ...

  3. 在linux下安装并配置mysql数据库

    在linux下安装并配置mysql数据库 工具/原料   MySql5.6 CentOS 方法/步骤   1 查找以前是否安装有mysql,使用下面命令: rpm -qa|grep -i mysql ...

  4. Linux下MySQL安装及配置

    Linux下MySQL安装及配置 安装MySQL Ubuntu系统中,直接使用apt install的方式去安装MySQL的服务端和客户端,MySQL的客户端必须安装,否则无法通过命令连接并操作MyS ...

  5. Linux UinxODBC安装与配置

    Linux UinxODBC安装与配置 一.简介 ODBC是Open Database Connect 即开发数据库互连的简称,它是一个用于访问数据库的统一界面标准.ODBC引入一个公共接口以解决不同 ...

  6. Linux下安装mantis配置指南【转】

    转自:http://blog.csdn.net/xabc3000/article/details/6858229 目录(?)[-] Linux下安装mantis配置指南 配置Linux下的Apache ...

  7. Linux下安装和配置JDK与Tomcat(升级版)

    在这个版本 Linux下安装和配置JDK与Tomcat(入门版) 的基础上优化升级 1.下载相关软件 apache-tomcat-6.0.37.tar.gz jdk-6u25-linux-i586-r ...

  8. MySQL 安装 + 精简 + 配置

    MySQL 安装 + 精简 + 配置 下载安装 从官网 下载 Community Edition MySQL 5.6 版本 精简 根目录下只留 [data/bin/share] , my-defaul ...

  9. [Linux]Linux下安装和配置solr/tomcat/IK分词器 详细实例二.

    为了更好的排版, 所以将IK分词器的安装重启了一篇博文,  大家可以接上solr的安装一同查看.[Linux]Linux下安装和配置solr/tomcat/IK分词器 详细实例一: http://ww ...

随机推荐

  1. 从淘宝 UWP 的新功能 -- 比较页面来谈谈 UWP 的窗口多开功能

    前言 之前在 剁手党也有春天 -- 淘宝 UWP ”比较“功能诞生记 这篇随笔中介绍了一下 UWP 淘宝的“比较”新功能呱呱坠地的过程.在鲜活的文字背后,其实都是程序员不眠不休的血泪史(有血有泪有史) ...

  2. Windows 2008 - 由于管理员设置的策略,该磁盘处于脱机状态

    http://blog.sina.com.cn/s/blog_59cc90640102x8m4.html 查看原文:https://www.bxl.me/9279.html准备使用云主机挂机的时候呢出 ...

  3. ABP(现代ASP.NET样板开发框架)系列之22、ABP展现层——导航栏设置

    点这里进入ABP系列文章总目录 基于DDD的现代ASP.NET开发框架--ABP系列之22.ABP展现层——导航栏设置 ABP是“ASP.NET Boilerplate Project (ASP.NE ...

  4. 学习WCF入门的第一个实例

    一.概述 WCF说白了就是一个基于终结点的通信手段!就是Service端提供一定的功能实现,然后暴露出一个或多个终结点,Client端调用Service端的功能(可以理解为调用一个函数),那么Clie ...

  5. SQL Server中的锁

    死锁的类型 不同表之间的相互等待,第一个事务操作A->B, 第二个事务操作B->A - 每个事务都锁定对方下一步将要操作的表 同一张表之间的相互等待, 无索引导致的全表扫描,下文中说到的情 ...

  6. Java豆瓣电影爬虫——抓取电影详情和电影短评数据

    一直想做个这样的爬虫:定制自己的种子,爬取想要的数据,做点力所能及的小分析.正好,这段时间宝宝出生,一边陪宝宝和宝妈,一边把自己做的这个豆瓣电影爬虫的数据采集部分跑起来.现在做一个概要的介绍和演示. ...

  7. ASP.NET MVC 登录验证

     好久没写随笔了,这段时间没 什么事情,领导 一直没安排任务,索性 一直在研究代码,说实在的,这个登录都 搞得我云里雾里的,所以这次我可能也讲得不是 特别清楚,但是 我尽力把我知道的讲出来,顺便也对自 ...

  8. HTML5 网络拓扑图整合 OpenLayers 实现 GIS 地图应用

    在前面<百度地图.ECharts整合HT for Web网络拓扑图应用>我们有介绍百度地图和 HT for Web 的整合,我们今天来谈谈 OpenLayers 和 HT for Web  ...

  9. ASP.NET Core 静态文件及JS包管理器(npm, Bower)的使用

    在 ASP.NET Core 中添加静态文件 虽然ASP.NET主要大都做着后端的事情,但前端的一些静态文件也是很重要的.在ASP.NET Core中要启用静态文件,需要Microsoft.AspNe ...

  10. [未完成]scikit-learn一般实例之九:用于随机投影嵌入的Johnson–Lindenstrauss lemma边界

    Johnson–Lindenstrauss 引理表明任何高维数据集均可以被随机投影到一个较低维度的欧氏空间,同时可以控制pairwise距离的失真. 理论边界 由一个随机投影P所引入的失真是确定的,这 ...