--【MySQL源码】源码安装和启动mysql

--------------------------------------2014/08/19

本机环境:ubuntu12.04,fedora-17

MYSQL版本:5.5.28

CMAKE版本:2.8.9

一.下载最新版本的cmake,解压后编译安装.

sudo ./configure --prefix=/usr/local/etc/cmake-2.8.9
sudo make
sudo make install
sudo ln -s /usr/local/etc/cmake-2.8.9/bin/cmake /usr/local/bin/cmake

现在可以使用cmake命令了!

如果出现以下提示,请先安装g++。

---------------------------------------------
CMake 2.8.9, Copyright 2000-2011 Kitware, Inc.
C compiler on this system is: cc
---------------------------------------------
Error when bootstrapping CMake:
Cannot find appropriate C++ compiler on this system.
Please specify one using environment variable CXX.
See cmake_bootstrap.log for compilers attempted.
---------------------------------------------
Log of errors: /usr/local/src/cmake-2.8.9/Bootstrap.cmk/cmake_bootstrap.log
---------------------------------------------

ubuntu下用

sudo apt-get install g++

redhat系列下用

sudo yum install gcc-c++

下载最新的mysql源码包,解压后,进入其跟目录

sudo cmake \
-DCMAKE_INSTALL_PREFIX=/usr/local/etc/mysql-5.5.28 \
-DMYSQL_DATADIR=/usr/local/etc/mysql-5.5.28/data \
-DEXTRA_CHARSETS=all \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-DMYSQL_TCP_PORT=3306 \
-DMYSQL_UNIX_ADDR=/tmp/mysql.sock \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \ # 这里附上一行版的,方便粘贴
# 注:此处路径为/opt下,如果要和上面保持一致,请手动修改
# sudo cmake -DCMAKE_INSTALL_PREFIX=/opt/mysql-5.5.28 -DMYSQL_DATADIR=/opt/mysql-5.5.28/data -DEXTRA_CHARSETS=all -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DMYSQL_TCP_PORT=3306 -DMYSQL_UNIX_ADDR=/tmp/mysql.sock -DWITH_INNOBASE_STORAGE_ENGINE=1 sudo make
sudo make install --添加debug功能,在cmake后面添加参数-DWITH_DEBUG=ON
更多参数选项,参考官方文档:http://dev.mysql.com/doc/refman/5.7/en/source-configuration-options.html

如果编译过程出现如下错误 需安装libncurses5-dev

-- Could NOT find Curses (missing:  CURSES_LIBRARY CURSES_INCLUDE_PATH)
CMake Error at cmake/readline.cmake:83 (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:127 (FIND_CURSES)
cmake/readline.cmake:217 (MYSQL_USE_BUNDLED_LIBEDIT)
CMakeLists.txt:268 (MYSQL_CHECK_READLINE) -- Configuring incomplete, errors occurred!
sudo apt-get install libncurses5-dev
#删除编译缓存信息
sudo rm -rf CMakeCache.txt

编译完成后创建数据库

./scripts/mysql_install_db --user=root --basedir=/opt/mysql-5.5./ --datadir=/opt/mysql-5.5./data/

创建完成后就可以启动数据库了

./bin/mysqld_safe --defaults-file=/etc/my.cnf --datadir=/opt/mysql-5.5./data/ --basedir=/opt/mysql-5.5./ --port= --user=root&

不知道是否是因为最新版本mysql 5.7的限制,我使用忽略权限表的方式登录数据库后,将密码修改为空,然后重启mysqld,再已空密码登录成功。

而后进行查询和创建数据库操作,报以下错误:

ERROR 1820 (HY000): You must SET PASSWORD before executing this statement

通过:set password=password("");即可解决问题。

【MySQL源码】源码安装和启动mysql的更多相关文章

  1. MySQL入门——在Linux下安装和卸载MySQL

    MySQL入门——在Linux下安装和卸载MySQL 摘要:本文主要学习了如何在Linux系统中安装和卸载MySQL数据库. 查看有没有安装过MySQL 使用命令查看有没有安装过: [root@loc ...

  2. windows下如何安装和启动MySQL

    1.下载,解压到自己喜欢的目录 2.配置环境变量.MYSQL_HOME,值为mysql的根目录:在path中添加%MYSQL_HOME%/bin目录. 3.向windows注册mysql服务.必须用管 ...

  3. MySQL 5.7.17 Windows安装和启动

    1.在官网http://dev.mysql.com/downloads/下载 MySQL Community Server 2.解压后是这个样子(5.7.18解压后没有my-default.ini文件 ...

  4. Docker 上安装、启动 MySQL

    在docker仓库中搜索mysql的镜像: docker search mysql ; 下载镜像,这里我们安装 5.7 版本 docker pull mysql:[TAG]; 不写TAG默认拉取最新版 ...

  5. [已解决]window下Can't connect to MySQL server on 'localhost' (10061)与无法启动MYSQL服务”1067 进程意外终止”

    查了一圈,发现都解决不了我的问题,查了 window 系统日志,提示缺少了某些文件,文件怎么丢的我也不知道,以下是解决办法. -- 我的 mysql 版本为 5.6.x 压缩包版本,我的 mysql ...

  6. linux - mysql - 卸载:RPM包安装方式的MySQL卸载

    (1)检查是否安装了MySQL组件 [root@DB-Server init.d]# rpm -qa | grep -i mysql MySQL-devel-5.6.23-1.linux_glibc2 ...

  7. Linux下安装、启动MySQL

    启动与停止 1.启动 MySQL安装完成后启动文件mysql在/etc/init.d目录下,在需要启动时运行下面命令即可. [root@localhost mysql]# /etc/init.d/my ...

  8. [mysql,2018-02-28] bat安装、启动mysql,并创建数据库、表

    @echo off f: cd F:\mysql-win32 @echo off&setlocal enabledelayedexpansion cd bin echo ###### 停止当前 ...

  9. 转:在centos安装与启动mysql

    一. 下载与安装过程相录详细 相当详细推荐.digitalocean.com 这个网站的东西,很详细,很专业. https://www.digitalocean.com/community/tutor ...

随机推荐

  1. 错误代码是1130,ERROR 1130: Host xxx.xxx.xxx.xxx is not allowed to connect to this MySQL server 是无法给远程连接的用户权限问题

    错误代码是1130,ERROR 1130: Host xxx.xxx.xxx.xxx is not allowed to connect to this MySQL server 是无法给远程连接的用 ...

  2. CentOS7 下使用YUM安装 MySQL5.7

    于2015年10月19日(美国时间),Oracle公司发布了开源数据库MySQL的最新版本5.7.到现在已有将近3年之久,经过这几年的改进,MySQL5.7性能最高可达前一个版本的3倍,现在官网的最新 ...

  3. QQ日迹Omi实战开发,从0到1

    写在前面 相信大家对Omi应该都不陌生了,如果还有不了解的同学先看看这里.了解并使用Omi之后你会发现真的回不去了~~~ 精通Omi框架 先简单说一下吧,Omi就是一个可以快速开发项目的组件化框架,和 ...

  4. 一个简单的时间轴demo

    一个时间轴的组成 使用一个块级元素包裹内容,并未块级元素设置边框 定义圆形或者菱形等元素标签,子元素设置偏移或者定位元素将图标定位到边框上 使其中的内容不溢出,自动换行,内容自动撑高 英文自动换行:w ...

  5. CJOJ 1308 【HNOI 2002 】营业额统计 / CodeVS 1296 营业额统计(STL,二分)

    CJOJ 1308 [HNOI 2002 ]营业额统计 / CodeVS 1296 营业额统计(STL,二分) Description Tiger最近被公司升任为营业部经理,他上任后接受公司交给的第一 ...

  6. Nodejs cluster模块深入探究

    由表及里 HTTP服务器用于响应来自客户端的请求,当客户端请求数逐渐增大时服务端的处理机制有多种,如tomcat的多线程.nginx的事件循环等.而对于node而言,由于其也采用事件循环和异步I/O机 ...

  7. DL4NLP —— seq2seq+attention机制的应用:文档自动摘要(Automatic Text Summarization)

    两周以前读了些文档自动摘要的论文,并针对其中两篇( [2] 和 [3] )做了presentation.下面把相关内容简单整理一下. 文本自动摘要(Automatic Text Summarizati ...

  8. 设计模式--工厂方法模式(Factory method pattern)及应用

    面向对象的好处: 通过封装,继承,多态把程序的耦合度降低. 用设计模式可以使程序更加灵活,容易修改,且易于复用. 1. 工厂方法模式 Define an interface for creating ...

  9. 函数响应式编程及ReactiveObjC学习笔记 (四)

    今天我们继续看其他的类别 UIImagePickerController+RACSignalSupport.h #import <UIKit/UIKit.h> @class RACDele ...

  10. 【bzoj1458】士兵占领

    Description 有一个M * N的棋盘,有的格子是障碍.现在你要选择一些格子来放置一些士兵,一个格子里最多可以放置一个士兵,障碍格里不能放置士兵.我们称这些士兵占领了整个棋盘当满足第i行至少放 ...