c mysql 源码_mysql 源码编译

cmake -DCMAKE_INSTALL_PREFIX=/opt/mysql \

-DDEFAULT_CHARSET=utf8 \

-DDEFAULT_COLLATION=utf8_general_ci \

-DWITH_EXTRA_CHARSETS:STRING=utf8,gbk \

-DWITH_MYISAM_STORAGE_ENGINE=1 \

-DWITH_INNOBASE_STORAGE_ENGINE=1 \

-DWITH_READLINE=1 \

-DENABLED_LOCAL_INFILE=1 \

-DMYSQL_DATADIR=/opt/data/mysql \

-DMYSQL_TCP_PORT=3306 \

源码安装mysql5.6,OS(Ubuntu 14.04Lts)

到mysql官网下载源码包 例如:mysql-5.6.16.tar.gz

解压缩 tar -xvf mysql-5.6.16.tar.gz

必要环境准备安装cmakesudo apt-get install cmake

最好是最新的,如果软件中心中不是最新的,可以到cmake的官方下载源码包进行编译安装

安装g++编译器    sudo apt-get install g++

安装依赖库libncurses    sudo apt-get install libncurses5-dev

建立两个目录,分别是mysql的家目录(basedir)和mysql的数据目录(mysqldata)

例:sudo mkdir /opt/mysql_5.6       sudo mkdir /opt/mysqldata

进到刚解压的mysql的源码的目录,利用cmake进行编译环境的配置

带参数如下:

sudo cmake .

-DCMAKE_INSTALL_PREFIX=/opt/mysql_5.6   (指定安装到的目录)

-DMYSQL_DATADIR=/opt/mysqldata   (指定数据目录)

-DDEFAULT_CHARSET=utf8   (指定DB的字符集)

-DDEFAULT_COLLATION=utf8_general_ci   (解决中文乱码的关键语句)

-DEXTRA_CHARSETS=all

-DENABLED_LOCAL_INFILE=1

这一步仅仅是为一下编译做好配置,并不是真正的安装,只是在当前目录生成makefile

sudo make         sudo make install    (这两部才是真正的编译安装)

以上步骤完成,mysql已经安装完成,但是还没进行初始化

到mysql安装的basedir,执行  sudo scripts/mysql_install_db --user=root

执行数据库的初始化操作,生成自带的一些DB(例如test,mysql等),后面的参数是指定用户

生成mysql的配置文件

sudo cp support-files/my-default.cnf /etc/my.cnf

之后要在里面mysqld指定相应的参数,例如:

basedir = /opt/mysql_5.6

datadir = /opt/mysqldata

port = 3306

.........等,上面这些是最起码的

最后就能启动数据库了,因为还没指定密码,所以第一次不用输入密码,一下是以安全模式启动数据库

sudo bin/mysqld_safe --user=root

为root用户设定密码,以安全模式进到数据库

use mysql;

UPDATE user SET password=PASSWORD('123456') WHERE user='root';

FLUSH PRIVILEGES;

或者,直接在bin目录下启用脚本:mysqladmin -u root -p password PASSWORD

注册mysql为Ubuntu的系统服务

sudo cp $MYSQL_HOME/support-files/mysql.server /etc/init.d/mysql.server

sudo chmod +x /etc/init.d/mysql.server

让mysql开机启动

sudo update-rc.d -f mysql.server defaults

取消开机启动 sudo update-rc.d -f mysql.server remove

修改my.cnf,指定mysql的启动用户

修改my.cnf,在[mysqld]区块下添加“user=root”这样一行。

服务的使用

启动mysql:service mysql.server start;

停止mysql:service mysql.server stop;

查看mysql运行状态:service mysql.server status。

将mysql的启动脚本添加到PATH环境变量中,

sudo gedit /etc/environment

在环境变量的后面添加   :/opt/mysql_5.6/bin

即你mysql的basedir里面的bin目录

source /etc/environment  (让其马上生效)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值