CC=gcc CFLAGS="-O3" CXX=gcc CXXFLAGS="-O3 -felide-constructors -fno-exceptions -fno-rtti" ./configure --prefix=/usr/local/mysql --enable-thread-safe-client --enable-assembler --with-big-tables --with-client-ldflags=-all-static --with-mysqld-ldflags=-all-static--with-charset=utf8 --with-collation=utf8_general_ci --with-extra-charsets=complex
配置选项说明:
CC:C编译器的名称(用于运行configure),本文示例为gcc
CFLAGS:C编译器的标志(用于运行configure),本文示例为-O3,指定优化级别为3
CXX:C++编译器的名称(用于运行configure),本文示例为gcc
CXXFLAGS:C++编译器的标志(用于运行configure)
--prefix:指定安装目录,本文示例为/usr/local/mysql
--localstatedir:指定默认数据库文件保存目录 , 默认为安装目录下的var目录
--enable-thread-safe-client:编译线程安全版的MySQL客户端库
--enable-assembler:使用一些字符函数的汇编版本
--with-client-ldflags:客户端链接参数,本文示例为指定静态编译mysql客户端
--with-mysqld-ldflags:服务器端链接参数,本文示例为指定静态编译mysql服务器
--with-big-tables:在32位平台上支持大于4G行的表
--with-charset:指定默认字符集 。mysql默认使用latin1(cp1252)字符集 , 可以使用此选项更改 。字符集可以是big5、cp1251、cp1257、czech、danish、dec8、dos、euc_kr、gb2312、gbk、german1、hebrew、hp8、hungarian、koi8_ru、koi8_ukr、latin1、latin2、sjis、swe7、tis620、ujis、usa7或win1251ukr 。
--with-collation:指定默认校对规则 。mysql默认使用latin1_swedish_ci校对规则,可以使用此选项更改 。
--with-extra-charsets:服务器需要支持的字符集 , 有三种可能的值:空格间隔的一系列字符集名;complex,包括不能动态装载的所有字符集;all,将所有字符集包括进二进制 。本文示例为complex 。
注意:要想更改字符集和校对规则,要同时使用--with-charset和--with-collation选项 。校对规则必须是字符集的合法校对规则 。(在mysql中使用SHOW COLLATION语句来确定每个字符集使用哪个校对规则) 。
3.1.5 编译源代码
执行下面的命令编译源代码:
make
3.1.6 安装
执行下面的命令安装mysql到目标路径:
make install
3.1.7 复制默认全局启动参数配置文件到/etc目录
源码方式安装需要手动复制配置文件,配置模板位于源码树的support-files目录,有my-small.cnf、my-medium.cnf、my-large.cnf、my-huge.cnf四个,选择跟你的环境相接近的一个复制到/etc目录,并做适当修改 。关于mysql配置文件的详细信息请参阅笔者的其它文章或是mysql官方文档 。
本文示例选择my-medium.cnf , 执行下面的命令将其复制到/etc目录:
cp ./support-files/my-medium.cnf/etc/my.cnf
3.1.8 初始化授权表
执行下面的命令初始化授权表:
./scripts/mysql_install_db --user=mysql
3.1.9 更改mysql数据目录属主和权限
默认数据库文件保存目录为安装目录下的var目录 , 执行configure命令时可通过--localstatedir参数指定不同的目录,本文示例为默认位置 。
chown -R mysql.mysql /usr/local/mysql/var
chmod -R 700 /usr/local/mysql/var
3.1.10 设置开机自启动服务控制脚本
执行下面的命令复制启动脚本到资源目录:
cp ./support-files/mysql.server /etc/rc.d/init.d/mysqld
执行下面的命令增加mysqld服务控制脚本执行权限:
chmod +x /etc/rc.d/init.d/mysqld
执行下面的命令将mysqld服务加入到系统服务:
chkconfig --add mysqld
执行下面的命令检查mysqld服务是否已经生效:
chkconfig --list mysqld
命令输出类似下面的结果:
推荐阅读
- sap现金管理与预算控制,erp现金管理
- 苹果cms怎么同步的简单介绍
- 冒险解谜沙盒游戏,冒险类沙盒游戏
- 直播伴侣直播怎么那么卡,直播伴侣直播怎么那么卡顿
- linux的vi搜索命令 linux view搜索
- oppo手机root怎么解除root,oppo解除root权限设置
- 大型sap,大型saas平台,技术架构
- php怎么自定义插入数据 php自定义表单
- 要怎么彻底删除sqlserver,要怎么彻底删除存在sim卡上的号码