本帖最后由 xtboris 于 2016-8-16 14:51 编辑
MySQL编译安装
#安装编译代码需要的包
yum -y install make gcc-c++ cmake bison-devel ncurses-devel
#mysql安装
wget http://dev.mysql.com/get/Downloads/MySQL-5.6/mysql-5.6.32.tar.gz
tar -zxvf mysql-5.6.32.tar.gz
cd mysql-5.6.32
cmake \
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DMYSQL_DATADIR=/usr/local/mysql/data \
-DSYSCONFDIR=/etc \
-DWITH_MYISAM_STORAGE_ENGINE=1 \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_MEMORY_STORAGE_ENGINE=1 \
-DMYSQL_UNIX_ADDR=/var/lib/mysql/mysql.sock \
-DMYSQL_TCP_PORT=3306 \
-DENABLED_LOCAL_INFILE=1 \
-DWITH_PARTITION_STORAGE_ENGINE=1 \
-DEXTRA_CHARSETS=all \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci
make && make install
groupadd mysql
useradd -s /sbin/nologin -g mysql mysql
chown -R mysql:mysql /usr/local/mysql
#初始化配置
cd /usr/local/mysql
scripts/mysql_install_db --datadir=/usr/local/mysql/data --user=mysql
mv /etc/my.cnf /etc/my.cnf.bak
cp /usr/local/mysql/support-files/my-default.cnf /etc/my.cnf
echo 'export PATH=/usr/local/mysql/bin:$PATH' >> /etc/profile
source /etc/profile
#启动mysql
cp support-files/mysql.server /etc/init.d/mysqld
chkconfig mysqld on
service mysqldd start
配置释义:
-DCMAKE_INSTALL_PREFIX=/usr/local/server/mysql-5.6.12 设置安装目录
-DMYSQL_DATADIR=/data/mysql 设置数据库存放目录
-DMYSQL_UNIX_ADDR=/tmp/mysql.sock 设置UNIX socket 目录
-DMYSQL_USER=mysql 设置运行用户
-DDEFAULT_CHARSET=utf8 设置默认字符集,默认latin1
-DEFAULT_COLLATION=utf8_general_ci 设置默认校对规则,默认latin1_general_ci
-DWITH_INNOBASE_STORAGE_ENGINE=1 添加InnoDB引擎支持
-DENABLE_DOWNLOADS=1 自动下载可选文件,比如自动下载谷歌的测试包
-DMYSQL_TCP_PORT=3306 设置服务器监听端口,默认3306
-DSYSCONFDIR=/data/etc 设置my.cnf所在目录,默认为安装目录
更多参数执行 # cmake . -LH
MySQL编译安装
#安装编译代码需要的包
yum -y install make gcc-c++ cmake bison-devel ncurses-devel
#mysql安装
wget http://dev.mysql.com/get/Downloads/MySQL-5.6/mysql-5.6.32.tar.gz
tar -zxvf mysql-5.6.32.tar.gz
cd mysql-5.6.32
cmake \
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DMYSQL_DATADIR=/usr/local/mysql/data \
-DSYSCONFDIR=/etc \
-DWITH_MYISAM_STORAGE_ENGINE=1 \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_MEMORY_STORAGE_ENGINE=1 \
-DMYSQL_UNIX_ADDR=/var/lib/mysql/mysql.sock \
-DMYSQL_TCP_PORT=3306 \
-DENABLED_LOCAL_INFILE=1 \
-DWITH_PARTITION_STORAGE_ENGINE=1 \
-DEXTRA_CHARSETS=all \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci
make && make install
groupadd mysql
useradd -s /sbin/nologin -g mysql mysql
chown -R mysql:mysql /usr/local/mysql
#初始化配置
cd /usr/local/mysql
scripts/mysql_install_db --datadir=/usr/local/mysql/data --user=mysql
mv /etc/my.cnf /etc/my.cnf.bak
cp /usr/local/mysql/support-files/my-default.cnf /etc/my.cnf
echo 'export PATH=/usr/local/mysql/bin:$PATH' >> /etc/profile
source /etc/profile
#启动mysql
cp support-files/mysql.server /etc/init.d/mysqld
chkconfig mysqld on
service mysqldd start
配置释义:
-DCMAKE_INSTALL_PREFIX=/usr/local/server/mysql-5.6.12 设置安装目录
-DMYSQL_DATADIR=/data/mysql 设置数据库存放目录
-DMYSQL_UNIX_ADDR=/tmp/mysql.sock 设置UNIX socket 目录
-DMYSQL_USER=mysql 设置运行用户
-DDEFAULT_CHARSET=utf8 设置默认字符集,默认latin1
-DEFAULT_COLLATION=utf8_general_ci 设置默认校对规则,默认latin1_general_ci
-DWITH_INNOBASE_STORAGE_ENGINE=1 添加InnoDB引擎支持
-DENABLE_DOWNLOADS=1 自动下载可选文件,比如自动下载谷歌的测试包
-DMYSQL_TCP_PORT=3306 设置服务器监听端口,默认3306
-DSYSCONFDIR=/data/etc 设置my.cnf所在目录,默认为安装目录
更多参数执行 # cmake . -LH
0
cmake \
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DMYSQL_DATADIR=/usr/local/mysql/data \
-DSYSCONFDIR=/etc \
-DWITH_MYISAM_STORAGE_ENGINE=1 \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_MEMORY_STORAGE_ENGINE=1 \
-DMYSQL_UNIX_ADDR=/var/lib/mysql/mysql.sock \
-DMYSQL_TCP_PORT=3306 \
-DENABLED_LOCAL_INFILE=1 \
-DWITH_PARTITION_STORAGE_ENGINE=1 \
-DEXTRA_CHARSETS=all \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci
有出现两个问题:
1:运行命令/usr/local/mysql/bin/mysql
报错ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)
2:support-files/目录下找不到my-huge.cnf my-large.cnf my-medium.cnf my-small.cnf这个几个文件
麻烦你指示下,谢谢!
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DMYSQL_DATADIR=/usr/local/mysql/data \
-DSYSCONFDIR=/etc \
-DWITH_MYISAM_STORAGE_ENGINE=1 \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_MEMORY_STORAGE_ENGINE=1 \
-DMYSQL_UNIX_ADDR=/var/lib/mysql/mysql.sock \
-DMYSQL_TCP_PORT=3306 \
-DENABLED_LOCAL_INFILE=1 \
-DWITH_PARTITION_STORAGE_ENGINE=1 \
-DEXTRA_CHARSETS=all \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci
有出现两个问题:
1:运行命令/usr/local/mysql/bin/mysql
报错ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)
2:support-files/目录下找不到my-huge.cnf my-large.cnf my-medium.cnf my-small.cnf这个几个文件
麻烦你指示下,谢谢!
0
source /etc/profile
-bash: export: `=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin:/tmp/:/data/bin/': not a valid identifier
-bash: export: `/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin': not a valid identifier
-bash: export: `/usr/local/mysql/bin:': not a valid identifier
-bash: export: `=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin:/tmp/:/data/bin/': not a valid identifier
-bash: export: `/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin': not a valid identifier
-bash: export: `/usr/local/mysql/bin:': not a valid identifier
0
第一个问题是mysql没有启动
第二个问题是按以前安装文档写的 已经更改为my-default.cnf
第三个问题是尽量手打echo 'export PATH=/usr/local/mysql/bin:$PATH' >> /etc/profile 之前bin:后面多了个空格
感谢反馈,文档已经更改了 测试没问题
guyuetom 发表于 2016-8-16 07:08
cmake \
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DMYSQL_DATADIR=/usr/local/mysql/data \
第一个问题是mysql没有启动
第二个问题是按以前安装文档写的 已经更改为my-default.cnf
第三个问题是尽量手打echo 'export PATH=/usr/local/mysql/bin:$PATH' >> /etc/profile 之前bin:后面多了个空格
感谢反馈,文档已经更改了 测试没问题
编辑回复