作者:天极软件 泉源:天极软件

你需求下列东西机关并装配MySQL源代码:GNU gunzip解紧缩该分发。

一个适宜的tar解包分发。GNU tar已知可以义务。

一个能运转的ANSI C 编译器。gcc> = 2.8.1 、egcs> = 1.0.2 、SGI C 和SunPro C 是一些已知能义务编译器。 当使gcc用时,不需求libg。gcc2.7.x 有一个bug,使得它能够不能编译一些完全合法的C 文件,例如“sql/sql_base.cc”。假如你仅有gcc2.7.x,你必须晋级gcc才干编译MySQL。

一个出色的make次序。GNU make总是被举荐且有时必须。假如你有功效,我们举荐试一试GNUmake3.75或更新。

假如你碰到功效,当向mysql@lists.mysql.com邮寄功效时,请接续使用mysqlbug。就算功效不是一个bug,mysqlbug搜集零碎信息,将有助于此外人筹划你的功效。假如倒运用mysqlbug,你裁汰得到关你功效的一个筹划方案的能够性!在你解包分发后,你会在“scripts”目录下找到mysqlbug。见2.3 若何陈述错误或功效。

4.7.1 疾速装配概述

你必须执行的装配MySQL源代码分发的基础下令是(从一个解包的tar文件):shell>configure

shell>make

shell>make install

shell>scripts/mysql_install_db

shell>/usr/local/mysql/bin/safe_mysqld &

假如你从一个源代码RPM开端,那么执行如下下令。shell> rpm -- rebuild MySQL-VERSION.src.rpm

多么你制作一个可以装配的二进制RPM。

假如你装配了DBI和Msql-Mysql-modulesPerl模块,你可以利用bin/mysql_setpermission剧本增进新用户。

以下是更详尽的描写:

为了装配源代码分发,遵循下列步骤,然后承袭到4.15 装配前期的设置与测试,举行装配前期的初始化与测试。挑选一个你要在其上面解包分发的目录,而且进入该目录。

从节4.1 若何得到MySQL中列出的站点之一得到一个分发文件。MySQL源代码分发以紧缩的tar档案供给,而且有近似于“mysql-VERSION.tar.gz”的名字,这里的VERSION是一个近似3.23.7-alpha的数字。

在以后目录下解包分发: shell> gunzip < mysql-VERSION.tar.gz | tar xvf -

这个下令创设名为“mysql-VERSION”的一个目录。

进入解包分发的顶级目录: shell> cd mysql-VERSION

设置发行版本而且编译: shell>./configure--prefix=/usr/local/mysql

shell>make

当你运转configure时,你能够想要指定一些选项,运转./configure --help得到一张选项表。4.7.3 典范的configure选项批评辩论一些很有用的选项。假如configure失败,你将发送包孕你感受能帮你筹划该功效的“config.log”的邮件,假如configure很是列入,也要包括configure的最后几行输入。用mysqlbug剧本邮寄错误陈述。见2.3 若何陈述错误和功效。假如编译失败,见节4.8 编译功效?,帮忙筹划很多罕见功效。

装配全部东西: shell>make install

你能够需求root用户来运转这个下令。

缔造MySQL受权表(只要你曩昔没装配MySQL是必须的): shell>scripts/mysql_install_db

看重,在运转mysql_install_db时,那些比3.22.10旧的MySQL版本启动MySQL效劳器。目下当今不是多么了!

假如你想要装配对Perl DBI/DBD接口的支撑,见4.10 Perl装配看重阐明');。

假如你想要MySQL在你指导呆滞时自动地启动,你可以拷贝support-files/mysql.server到你的零碎中有启动文件的处所。更多的信息可以在support-files/mysql.server剧本里和4.15.3 自动启动和终止MySQL找到。

在全部东西装配完以后,你应该初始化而且测试你的分发。

你可以用下列下令启动MySQL效劳器,这里BINDIR是safe_mysqld被装配的目录(缺省为“/usr/local/bin”):shell> BINDIR/safe_mysqld &

假如这个下令提醒mysqld daemon ended并即速失败,那么你能在文件“mysql-data-directory/'hostname'.err”找到一些信息。能够的缘由是你已经有另外一个正在运转的mysqld效劳器。见19.3 在一致台呆滞上运转多个MySQL效劳器。

拜见4.15 装配前期的设置与测试。

4.7.2 运用补丁

有时补丁呈目下当今邮件列表上或放在MySQL FTP所在的补丁区。

为了使用来自邮件列表的一个补丁,留存补丁呈目下当今文件的往事,进入你的MySQL源代码树的顶级目录并运转这些下令:shell>patch - p1

shell>rm config.cache

shell>make clean

来自FTP所在的补丁是作为普通文本文件或作为被紧缩了的gzip文件分发。运用一个文本的补丁如上述邮件列表补丁,为了使用一个紧缩的补丁,进入你的MySQL源代码树顶级目录并运转这些下令:shell>gunzip

shell>rm config.cache

shell>make clean

在使用一个补丁以后,遵循正常的源代码装配的指令,开端./configure步骤。在运转make install后,重启你的MySQL效劳器。

在运转make install前,你能够需求封闭全部正在运转的效劳器(使用mysqladmin shutdown)。假如一个次序的新版本替代以后正在执行的版本,一些零碎不答应你装配它。

4.7.3 典范的configure选项

configure剧本给你一个很年夜的节制权来若何设置配备陈设你的MySQL分发。典范地,你使用configure下令行的选项举行。你也可以用正确的环境变量感化于configure。关于一个由configure支撑的选择列表,运转这个下令:shell> ./configure -- help

一些更常用的configure选项见上面的描写:只编译MySQL客户库和客户次序而不是效劳器,使用--without-server选项: shell> ./configure --without-server

假如你没有一个 C 编译器,mysql将不编译(有一个客户次序需求C )。在这种环境下,你可以去丢失configure里面测试C 编译器的代码,然后运转带有 --without-server选项的./configure。编译步骤步将仍旧尝试机关mysql,可是你可以马虎任何干于“ mysql.cc ”的正告。(假如make终止,尝尝make -k陈述它即使失足承袭剩下的机关步骤)。

假如你不想要位于“/usr/local/var”目录上面的日记(log)文件和数据库,使用近似于下列configure下令的一个: shell>./configure--prefix=/usr/local/mysql

shell>./configure--prefix=/usr/local --localstatedir=/usr/local/mysql/data

第一个下令变化装置前缀以便任何东西被装配在“/usr/local/mysql”上面而非缺省的“/usr/local”。第二个下令留存缺省装配前缀,可是覆盖了数据库目录缺省目录(每每是“/usr/local/var”)而且把它改/usr/local/mysql/data.

假如你正在使用Unix而且你想要MySQL的套接字位于缺省所在以外的某个处所(每每在目录“/tmp”或“/var/run”,使用象多么的configure的下令: shell> ./configure -- with-unix-socket-path=/usr/local/mysql/tmp/mysql.sock

看重给出的文件必须是一个绝对途径!

假如你想编译静态链接次序(例如,制作二进制分发、得到更快的速率或与筹划与RedHat分发的一些),像多么运转configure: shell>./configure --with-client-ldflags=-all-static --with-mysqld-ldflags=-all-static

假如你正在使用gcc而且没有装配libg或libstdc,你可以陈述configure使用gcc作为C 编译器: shell> CC=gcc CXX=gcc ./configure

当你使用时gcc作为C 编译器是,它将不试图链接libg或libstdc。假如机关失败而且孕育发生有关编译器或链接器的错误,不能创设共享库“libmysqlclient.so.#”(“#”是一个版本号), 你可以经过进程为configure指定--disable-shared选项来筹划此功效。在这种环境下,configure将不机关一个共享libmysqlclient.so.#库。

你可以设置MySQL关于非NULL的列倒运用DEFAULT列值(即,不答应列是NULL)。这招致INSERT语句孕育发生一个错误,除非你大白地为全部要求非NULL值的列指定值。为了抑制使用缺省值,多么运转configure: shell> CXXFLAGS=-DDONT_USE_DEFAULT_FIELDS ./configure

缺省地,MySQL使用ISO-8859-1(Latin1)字符集。为了转变缺省设置,使用--with-charset选项目: shell> ./configure -- with-charset=CHARSET

CHARSET可以是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、win1251或win1251ukr之一。见9.1.1 用于数据和排序的字符集。看重:假如你想要转变字符集,你必须在设置配备陈设时代做make distclean!假如你想在效劳器和客户之间变卦字符,你应该看一下SET OPTION CHARACTER SET下令。见7.25SET OPTION句法。正告:假如你在创设了任何数据库表之后转变字符集,你将必须对每个表运转myisamchk -r -q,不然你的索引能够不正确地排序。(假如你装配了MySQL,创设一些表,然后从新设置配备陈设MySQL使用一个差此外字符集而且从新装配它,这时就能够孕育发生这种环境。)

为了设置配备陈设MySQL带有调试代码,使用--with-debug选项: shell> ./configure --with-debug

这招致包孕一个安全的内存分配器,能缔造一些错误和并供给关于正在孕育发生的事情的输入。见G.1调试一个MySQL效劳器。

属于特定零碎的选项可在本章特定零碎的小节里找到。见4.11 零碎特定的功效。

版权声明:

原创作品,答应转载,转载时请务必以超链接方式标明文章 原始来因 、作者信息和本声明。不然将穷究纪律责任。

mysql 分发_装配MySQL源代码分发相关推荐

  1. mysql数据库维护_维护MySQL数据库表

    在本教程中,我们将向您介绍一些非常有用的语句,使您可以在MySQL中维护数据库表. MySQL提供了几个有用的语句,可以有效地维护数据库表. 这些语句使您能够分析,优化,检查和修复数据库表. 分析表语 ...

  2. mysql整备_【mysql】使用xtrabackup在线增量备份及恢复数据库

    一.Percona Xtrabackup 简介 1.Xtrabackup  bin目录文件 介绍 1)innobackupex innobackupex 是xtrabackup的一个符号链接 . in ...

  3. shell实行mysql语句_【Mysql】shell运行mysql的sql语句_MySQL

    bitsCN.com [Mysql]shell运行mysql的sql语句 shell本身是一种脚本语言,所以不能像java一样通过api去连接数据库.shell还是要借助mysql本身的一些运行脚本才 ...

  4. mysql 优化_常用MySQL优化

    1.大批量插入数据优化 (1)对于MyISAM存储引擎的表,可以使用:DISABLE KEYS 和 ENABLE KEYS 用来打开或者关闭 MyISAM 表非唯一索引的更新. ALTER TABLE ...

  5. 阿里云查看mysql版本_查看mysql版本的四种方法及常用命令

    [shengting@login ~]$ mysql -V mysql Ver 14.7 Distrib 4.1.10a, for redhat-linux-gnu (i686) 2:在mysql中: ...

  6. 涂抹mysql 完整_涂抹mysql笔记-管理mysql服务

    $ /mysql/scripts/mysql_install_db --datadir=/mysql/data --basedir=/mysql support-files/mysql.server脚 ...

  7. xshell安装mysql步骤_数据库Mysql与禅道安装

    一.Linux上搭建禅道 Mysql 是关系型数据库管理系统 1.下载安装包:将安装包直接解压到/opt目录下,不要 解压到别的目录在拷贝到/opt/,因为这样会导致文件的所有者和读写权限改变 2.解 ...

  8. mysql实时读写_[DataBase] MySql 查看实时日志

    MySql 查看实时日志 -f 代表会实时读取该文件的更新内容 tail -f /usr/local/mysql/log/mysql.log 配置好日志 [mysqld] log-error = /u ...

  9. 试题导入mysql乱码_解决Mysql导入乱码问题

    解决Mysql导入乱码问题 方法一: 通过增加参数 –default-character-set = utf8 解决乱码问题 C:\Users\Administrator>mysql -uroo ...

最新文章

  1. idea 报系统分区磁盘不足_系统磁盘管理功能讲解,电脑硬盘分区格式化修改驱动器号图文教程...
  2. 【C 语言】文件操作 ( 文件加密解密 | 加密文件 )
  3. 10.5 QQ 支持
  4. 微型计算机只能使用机器语言,道计算机等级考试精选题全.doc
  5. 网络协议及IP地址分类
  6. python每隔几秒执行一次_Python设置程序等待时间
  7. java中数组合并的方法,数组合并--Java原生方法
  8. 苹果手机怎么编辑word文档_可以一键导入word图文的微信编辑软件有什么?编辑器怎么使用?...
  9. WPF e.Systemkey的一个坑
  10. 将向量附加到向量[重复]
  11. 传感器原理与应用复习—电阻式应变传感器部分
  12. 中兴e8820刷openwrt_中兴E8820V2(电信天翼宽带类似新路由3歌华链)-拆机及OpenWrt固件...
  13. 计算机里面CPU是什么意思,cpu是什么 cpu是什么意思详细介绍
  14. 独立站SEO到底怎么做?
  15. C语言中变量的作用域和生命周期
  16. QT--在注释中遇到意外的文件结束
  17. 渗漏(Percolation)问题(java语言实现)
  18. html vb病毒,HTML_用vbs实现的一款Worm.Win32.VB.fw病毒专杀,在写了《Worm.Win32.VB.fw分析与清 - phpStudy...
  19. 人脸检测与美颜技术介绍(OpenCV)
  20. 【智能优化算法】基于全局优化的改进鸡群算法求解单目标优化问题(ECSO)附matlab代码

热门文章

  1. PostgreSQL的HA解决方案-1主从和备份(master/slave and backup)
  2. CentOS 6.5升级Python后yum不可用的解决方案
  3. Macbook外接显示器模糊解决方法
  4. 浅析arm的异常、中断和arm工作模式的联系
  5. 完美解决Invalid layout of java.lang.String at value问题的方法
  6. POI 导出excel带小数点的数字格式显示不对解决方法
  7. Jenkins的错误“error fetching remote repo origin”的问题解决
  8. sublime_REPL使用及安装教程(解决Sublime无交互问题)
  9. 如何在Java中比较日期? [重复]
  10. 如何在Oracle上使用AUTO_INCREMENT创建ID?