编译安装MySQL5.6及数据库配置

编译安装:

创建MySQL专用账户和用户组:

groupaddmysql

useradd-g mysql mysql

设置用户操作系统资源的限制,在/etc/security/limits.conf最后添加

mysql      soft  nproc      2047

mysql      hardnproc      16384

mysql      soft  nofile      1024

mysql      hardnofile      65536

执行cmake . -LAH查看MySQL编译所有支持的参数,或者通过http://dev/mysql.com/doc/refman/5.6/en/source-configuration-options.html查看官方技术文档

安装cmake:

yuminstall cmake

出现问题:Generic Linux (Architecture Independent), Compressed TAR Archive

解决:yum -y install ncurses-devel
出现问题:CMAKE_C_COMPILER not set, after EnableLanguage
解决:yum install gcc-c++

rm -f CMakeCache.txt

重新编译安装

解压源码包:tar -zvfx mysql-5.6.28.tar.gz

进入解压目录,执行cmake编译并安装:

cdmysql-5.6.28

cmake. -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DDEFAULT_COLLATION=utf8_general_ci-DDEFAULT_CHARSET=utf8 -DENABLED_LOCAL_INFILE=ON-DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_FEDERATED_STORAGE_ENGINE=1-DWITH_BLACKHOLE_STORAGE_ENGINE=1 -DWITHOUT_EXAMPLE_STORAGE_ENGINE=1-DWITH_PARTITION_STORAGE_ENGINE=1 -DWITH_PERFSCHEMA_STORAGE_ENGINE=1 -DCOMPILATION_COMMENT=‘JSSfor mysqltest‘ -DWITH_READLINE=ON -DSYSCONFDIR=/data/mysqldata/3306-DMYSQL_UNIX_ADDR=/data/mysqldata/3306/mysql.sock

make && make install

修改软件所在目录拥有者为mysql:

chown-R mysql:mysql /usr/local/mysql

修改mysql用户环境变量,在/home/mysql/.bash_profile添加

# exportLANG=zh_CN.GB18030

exportPATH=/usr/local/mysql/bin:$PATH

管理MySQL数据库服务

MySQL数据库服务:MySQL软件、MySQL实例和MySQL数据库几部分的总称

MySQL实例:指MySQL进程以及该进程持有的内存资源

MySQL数据库:MySQLdata目录或MySQLdatabase文件

mysql数据库:mysql这个DB

mysql:连接MySQL数据库的命令行方式交互工具mysql

创建数据库文件默认路径:

mkdir -p/data/mysqldata/{3306/{data,tmp,binlog},backup,scripts}

chown -R mysql:mysql /data/mysqldata

chown -R mysql:mysql /usr/local/mysql

添加MySQL配置文件/data/mysqldata/3306/my.cnf如下:

[client]

port = 3306

socket = /data/mysqldata/3306/mysql.sock

# The MySQL server

[mysqld]

port   = 3306

user   = mysql

socket = /data/mysqldata/3306/mysql.sock

pid-file        = /data/mysqldata/3306/mysql.pid

basedir = /usr/local/mysql

datadir = /data/mysqldata/3306/data

tmpdir = /data/mysqldata/3306/tmp

open_files_limit       = 10240

explicit_defaults_for_timestamp

sql_mode        =NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES

# Buffer

max_allowed_packet      = 256M

max_heap_table_size     = 256M

net_buffer_length   = 8K

sort_buffer_size        = 2M

join_buffer_size        = 4M

read_buffer_size        = 2M

read_rnd_buffer_size    = 16M

# Log

log-bin =/data/mysqldata/3306/binlog/mysql-bin

binlog_cache_size       = 32m

max_binlog_cache_size   = 512m

max_binlog_size = 512m

binlog_format   = mixed

log_output      = FILE

log-error       = ../mysql-error.log

slow_query_log  = 1

slow_query_log_file     = ../slow_query.log

general_log     = 0

general_log_file        = ../general_query.log

expire-logs-days        = 14

# InnoDB

innodb_data_file_path   = ibdata1:2048M:autoextend

innodb_log_file_size    = 256M

innodb_log_files_in_group       = 3

innodb_buffer_pool_size = 1024M

[mysql]

no-auto-rehash

prompt = (\[email protected]\h) [\d]\_

default-character-set   = gbk

初始化MySQL数据库:

/usr/local/mysql/scripts/mysql_install_db--datadir=/data/mysqldata/3306/data --basedir=/usr/local/mysql

启动MySQL服务:

$ /usr/local/mysql/bin/mysqld_safe--defaults-file=/data/mysqldata/3306/my.cnf &

连接数据库:

$ /usr/local/mysql/bin/mysql

检查MySQL服务是否启动:

netstat -tnl | grep 3306

保留一条允许root用户从本地连接的记录外,删除全部其他用户:

delete from mysql.user where (user,host)not in (select ‘root‘,‘localhost‘);

修改管理员用户:

update mysql.user setuser=‘system‘,password=password(‘password‘);

truncate table mysql.db;

生效所有操作:

flush privileges;

MySQL服务管理配置

创建中间定义文件,提高脚本的复用性:

$ vi/data/mysqldata/scripts/mysql_env.ini

# set env

MYSQL_USER=system

MYSQL_PASS=’password’

# check parameter

if [ $# -ne 1 ]

then

HOST_PORT=3306

else

HOST_PORT=$1

fi

修改该文件在操作系统层的权限:

$ chmod 600/data/mysqldata/scripts/mysql_env.ini

创建mysql_db_startup.sh脚本,用于启动MySQL服务:

$ vi/data/mysqldata/scripts/mysql_db_startup.sh

#!/bin/sh

source/data/mysqldata/scripts/mysql_env.ini

echo "Stratup MySQL Service:local_"${HOST_PORT}

/usr/local/mysql/bin/mysqld_safe--defaults-file=/data/mysqldata/${HOST_PORT}/my.cnf &

创建mysql_db_shutdown.sh脚本,用于关闭MySQL服务:

$ vi /data/mysqldata/scripts/mysql_db_shutdown.sh

#!/bin/sh

source/data/mysqldata/scripts/mysql_env.ini

echo "Shutdown MySQL Service:localhost_"${HOST_PORT}

/usr/local/mysqldata/bin/mysqladmin-u${MYSQL_USER} -p${MYSQL_PASS} -S /data/mysqldata/${HOST_PORT}/mysql.sockshutdown

创建mysqlplus.sh脚本文件用于快速登录:

$ vi/data/mysqldata/scripts/mysqlplus.sh

#!/bin/sh

source/data/mysqldata/scripts/mysql_env.ini

echo "Login MySQL Service:localhost_"${HOST_PORT}

/usr/local/mysql/bin/mysql-u${MYSQL_USER} -p${MYSQL_PASS} -S /data/mysqldata/${HOST_PORT}/mysql.sock $2

授权以上脚本执行权限:

$ chmod +x /data/mysqldata/scripts/*.sh

编辑mysql用户的环境变量,将上述路径加入到PATH中:

$ echo "exportPATH=/data/mysqldata/scripts:$PATH">>~/.bash_profile

$ source ~/.bash_profile

编辑/etc/rc.local使MySQL开机启动,在最后添加:

sudo -i -u mysql/data/mysqldata/scripts/mysql_db_startupsh 3306 >/home/mysql/mysql_db_startup.log 2>&1

visudo把Defaultsrequiretty注释掉,避免sudo: sorry,you myst have a ttyto run sudo

时间: 2024-10-09 21:59:52

编译安装MySQL5.6及数据库配置的相关文章

CentOS6.3_64编译安装MySQL-5.5.37数据库

1.下载cmake: http://wwwNaNake.org/files/v2.8/cmake-2.8.10.2.tar.gz ./configure make && make install 2.vi /etc/profile: export PATH=/usr/local/cmake-2.8.10.2/bin:$PATH source /etc/profile 3.wget http://dev.mysql.com/get/Downloads/MySQL-5.5/mysql-5.5.

开发人员学Linux(6):CentOS7编译安装MySQL5.17.8多实例及主从复制

1.前言上一篇讲述了如何在CentOS7下编译安装Nginx-1.12.0并如何配置反向代理,本篇将讲述如何编译安装MySQL5.7.18并配置多实例.2.准备2.1下载MySQL5.7.18源码注意最新版本的MySQL需要Boost才能编译安装,在MySQL提供的下载中有不带boost的源码,还有带boost的源码,如果下载不带boost的源码还需要再去下载boost源码,为省事起见,建议下载带boost的源码,下载地址:https://cdn.mysql.com//Downloads/MyS

Ubuntu15.04下源码安装MySQL5.6.26数据库

解决Ubuntu 15.04版下源码编译安装MySQL5.6.26数据库问题,这里提供依赖包下载,源码安装方法. (1)安装编译源码需要的包 sudoapt-get install make cmake gcc g++ bison libncurses5-dev 依赖包在博客附件里有下载.下面也有说明一些解决方法. 另外的:cmake-2.8.3.tar.gz安装啊.bison_3.0.2.dfsg-2_i386.deb.ncurses-5.9.tar.gz的依赖缺少的话自己可以去下载安装,由于

linux上源码编译安装mysql-5.6.28

在 linux 上编译安装 mysql-5.6.28.tar.gz http://www.mysql.com/ mysql下载地址: http://www.mysql.com/downloads/mysql/#downloads mysql 官方网站文档: https://dev.mysql.com/doc/ 01.准备工作 yum install -y gcc gcc-c++ cmake make ncurses ncurses-devel bison 02.解压 tar zxf mysql-

cmake编译安装mysql5.5

CMAKE方式编译安装Mysql5.5 1.源码cmake方式编译安装MySQL5.5.32 安装前先安装: yum install ncurses-devel -y 1.1 下载Mysql和cmake安装包: wget http://wwwNaNake.org/files/v2.8/cmake-2.8.8.tar.gz 1.2 查看系统环境 cat /etc/redhat-release uname -r uname -m 1.3 安装cmake包 tar zxf cmake-2.8.8.ta

一、Ubuntu下编译安装Mysql5.0.45

一.编译安装Mysql5.0.45 在Ubuntu下搭建LNMP环境.编译安装mysql,nginx,php.最后在LNMP前提下安装composer,并且安装laravel框架.首先,第一步开始编译安装Mysql. 步骤: cd /usr/local/src,进入到文件夹中,这个文件夹用来保存所需使用的软件安装包. 接着键入"sudo wgethttp://downloads.mysql.com/archives/mysql-5.0/mysql-5.0.45.tar.gz"回车,如果

CentOS6.7下使用cmake编译安装MySQL5.5.32笔记

一.安装cmake编译环境1.1 使用yum方式安装gcc [[email protected] ~]# yum install gcc 1.2 使用yum方式安装gcc-c++ [[email protected] ~]# yum install gcc-c++ 1.3 解压camke源文件 将cmake源文件放入/tmp/文件夹下 1 [[email protected] ~]# cd /tmp 2 [[email protected] ~]# tar -xf cmake-2.8.8.tar

编译安装mysql-5.5.32

由于MySQL5.5.xx-5.6.xx产品系列特性,所以编译方式和早期产品安装方式不同 采用cmake方式编译安装MySQL-5.5.32 检查好所需的开发环境,小编在这里用的是centos6.5       执行以下命令即可:yum -y groupinstall "Development tools" "Compatibility libraries" 1.需要准备的安装包 wget /home/oldboy/tools http://mysql.ntu.ed

centos6.4下编译安装MySQL-5.5.33

若想在6.4版本下的centos编译安装MySQL必须使用新的编译器cmake. 1)安装cmake 直接yum安装 2)编译安装参数 使用cmake编译安装mysql-5.5.33,选项的方式有所改变: ./configure                cmake .            编译   ./configure –help         cmake . -LH or ccmake .   获取帮助 指定安装文件的安装路径时常用的选项:    -DCMAKE_INSTALL_P