Maison base de données tutoriel mysql 源码编译安装MySQL5.6.10最佳实践

源码编译安装MySQL5.6.10最佳实践

Jun 07, 2016 pm 04:19 PM
安装 实践 最佳 源码 编译

1安装cmake MySQL从5.5版本开始,通过./configure进行编译配置方式已经被取消,取而代之的是cmake工具。 因此,我们首先要在系统中源码编译安装cmake工具。 # wget # tar zxvf cmake-2.8.7.tar.gz # cd cmake-2.8.7 # ./configure # make # make install 1.1

   1安装cmake

  MySQL从5.5版本开始,通过./configure进行编译配置方式已经被取消,取而代之的是cmake工具。

  因此,我们首先要在系统中源码编译安装cmake工具。

  # wget

  # tar zxvf cmake-2.8.7.tar.gz

  # cd cmake-2.8.7

  # ./configure

  # make

  # make install

  1.1cmake命令语法

  1.2重新编译时,需要清除旧的对象文件和缓存信息

  # make clean

  # rm -f CMakeCache.txt

  1.3安装选项

  CMAKE_INSTALL_PREFIX值是安装的基本目录,其他cmake选项值是不包括前缀,是相对路径名,绝对路径包括CMAKE_INSTALL_PREFIX路径。如-DINSTALL_SBINDIR=sbin的绝对路径是/usr/local/mysql /sbin

  1.4存储引擎选项

  mysql存储引擎是插件式的,因此插件控制选项可以指定那个存储引擎安装。

  configure编译插件选项--with-plugins=csv,myisam,myisammrg,heap,innobase,archive,blackhole在cmake中没有直接对应的相同选项。对于csv,myisam,myisammrg,heap在cmake中是不需要明确指定存储引擎的名称,因为它们是强制性安装。

  可以使用以下选择来安装innodb,archive,blackhole存储引擎

  -DWITH_INNOBASE_STORAGE_ENGINE=1

  -DWITH_ARCHIVE_STORAGE_ENGINE=1

  -DWITH_BLACKHOLE_STORAGE_ENGINE=1

  (1可以使用on代替)

  如果既不是-DWITH__STORAGE_ENGINE也不是-DWITHOUT__STORAGE_ENGINE 来指定存储引擎,该存储引擎将安装成共享模块式的。如果不是共享模块式的将排除在外。共享模块安装时必须使用INSTALL PLUGIN语句或--plugin-load才可以使用。

  有关插件的CMake的选项的其他信息,请查阅:

  1.5 lib库选项

  1.6其他选项

  之前MySQL的编译选项大多数都支持。新旧版本之间的安装选项映射成大写字母,删除选项前面破折号,中间字符间的破折号替换成下划线。如:

  --with-debug => WITH_DEBUG=1

  --with-embedded-server => WITH_EMBEDDED_SERVER

  1.7调试配置过程

  使用configure编译完将生成config.log和config.status文件。

  使用cmake编译完在CMakeFiles目录下生成CMakeError.log 和CMakeOutput.log文件。

  1.8第三方接口工具

  在之前的版本,第三方工具从MySQL顶层源目录中读取源configure.in文件来确定mysql版本。如:对5.5.7 - RC版本的AC_INIT线看起来像这样:

  AC_INIT([MySQLServer], [5.5.7-rc], [], [mysql])

  现在的版本可以直接读取版本文件。如:如果版本是5.5.8,,文件看起来像这样的:

  MYSQL_VERSION_MAJOR=5

  MYSQL_VERSION_MINOR=5

  MYSQL_VERSION_PATCH=8

  MYSQL_VERSION_EXTRA=rc

  如果源码包不是GA版,MYSQL_VERSION_EXTRA的值将非空。如:对于一个发布RC版本是这样的: MYSQL_VERSION_EXTRA=rc

  构建5位数字的版本号,使用下面公式:

  MYSQL_VERSION_MAJOR*10000+ MYSQL_VERSION_MINOR*100 + MYSQL_VERSION_PATCH

  2验证安装依赖

  通过 rpm -qa | grep name的方式验证以下软件包是否已全部安装。

  gcc* gcc-c++* autoconf* automake* zlib*libxml* ncurses-devel* libmcrypt* libtool*

  通过yum安装示例

  例:yum install gcc gcc-c++

  例:yum install ncurses-devel

  如果缺少相关的软件包,可通过yum -y install的方式在线安装,或直接从系统安装光盘中找到并通过rpm -ivh的方式安装。

  3安装前的系统设置

  建立mysql安装目录及数据存放目录

  # mkdir /usr/mysql5.5

  # mkdir /usr/mysql5.5/data

  创建用户和用户组

  # groupadd mysql

  # useradd –gmysql mysql

  赋予数据存放目录权限

  # chown mysql:mysql –R /opt/mysql5.5/data

  4正式开始安装(从configure更换为cmake)

  我相信大多数人都已经习惯了之前的configure方式,并且所使用的参数也是比较个性化的,换成cmake之后,这一方面会带来不少的麻烦。

  还好,MySQL的官方网站提供了二者的参数对照表,我们可以尽可能的保留之前的参数,来编译配置新的MySQL版本。

  configure 与cmake参数对照指南:

  

  以我自己为例,之前我一直使用的参数为:

  ./configure --prefix=/opt/mysql/

  --sysconfdir=/opt/mysql/etc

  --localstatedir=/opt/mysql/data

  --with-tcp-port=3306

  --with-unix-socket-path=/tmp/mysqld.sock

  --with-mysqld-user=mysql

  --enable-assembler

  --with-extra-charsets=all

  --enable-thread-safe-client

  --with-big-tables

  --with-readline

  --with-ssl

  --with-embedded-server

  --enable-local-infile

  --with-plugins=partition,innobase,myisammrg

  经过与cmake的参数对照之后,去除掉已经被取消的参数(大多数是因为新版本已经默认启用),cmake的参数配置如下:

  cmake -DCMAKE_INSTALL_PREFIX=/opt/mysql

  -DSYSCONFDIR=/opt/mysql/etc

  -DMYSQL_DATADIR=/opt/mysql/data

  -DMYSQL_TCP_PORT=3306

  -DMYSQL_UNIX_ADDR=/tmp/mysqld.sock

  -DMYSQL_USER=mysql

  -DEXTRA_CHARSETS=all

  -DWITH_READLINE=1

  -DWITH_SSL=system

  -DWITH_EMBEDDED_SERVER=1

  -DENABLED_LOCAL_INFILE=1

  -DWITH_INNOBASE_STORAGE_ENGINE=1

  -DWITHOUT_PARTITION_STORAGE_ENGINE=1

  不带换行符的(只有一行)

  4.1参数:-DWITHOUT_PARTITION_STORAGE_ENGINE=1

  在64位机器上编译不过,会出现如下错误:(64位机器的浮点数运算上出错,导致找不着相应的函数)

  libsql.a(handler.cc.o): In function`get_ha_partition(partition_info*)’:

  /data/mysql-5.5.14/sql/handler.cc:269: undefined reference to`ha_partition::ha_partition(handlerton*, partition_info*)’

  /data/mysql-5.5.14/sql/handler.cc:271: undefined reference to`ha_partition::initialize_partition(st_mem_root*)’

  libsql.a(sql_partition_admin.cc.o): In function`Alter_table_truncate_partition_statement::execute(THD*)’:

  /data/mysql-5.5.14/sql/sql_partition_admin.cc:165: undefinedreference to `ha_partition::truncate_partition(Alter_info*, bool*)’

  collect2: ld returned 1 exit status

  make[2]: *** [sql/mysqld] Error 1

  make[1]: *** [sql/CMakeFiles/mysqld.dir/all] Error 2

  make: *** [all] Error 2

  4.2参数:-DWITH_SSL=bundled

  自mysql5.6.*及以后的版本都要默认带上此参数,否则编译不过 ,相关贴子:

  https://github.com/santisaez/powerstack/issues/49

  Use bundled SSL on CentOS-5

  4.3安装执行

  # tar xvf mysql-5.5.10.tar.gz

  # cd mysql-5.5.10

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
2 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Repo: Comment relancer ses coéquipiers
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Adventure: Comment obtenir des graines géantes
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Combien de temps faut-il pour battre Split Fiction?
3 Il y a quelques semaines By DDD

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Solution au problème selon lequel le pack de langue chinoise ne peut pas être installé sur le système Win11 Solution au problème selon lequel le pack de langue chinoise ne peut pas être installé sur le système Win11 Mar 09, 2024 am 09:48 AM

Solution au problème selon lequel le système Win11 ne peut pas installer le pack de langue chinoise Avec le lancement du système Windows 11, de nombreux utilisateurs ont commencé à mettre à niveau leur système d'exploitation pour découvrir de nouvelles fonctions et interfaces. Cependant, certains utilisateurs ont constaté qu'ils ne parvenaient pas à installer le pack de langue chinoise après la mise à niveau, ce qui perturbait leur expérience. Dans cet article, nous discuterons des raisons pour lesquelles le système Win11 ne peut pas installer le pack de langue chinoise et proposerons des solutions pour aider les utilisateurs à résoudre ce problème. Analyse des causes Tout d'abord, analysons l'incapacité du système Win11 à

Impossible d'installer les ajouts d'invités dans VirtualBox Impossible d'installer les ajouts d'invités dans VirtualBox Mar 10, 2024 am 09:34 AM

Vous ne pourrez peut-être pas installer des ajouts d'invités sur une machine virtuelle dans OracleVirtualBox. Lorsque nous cliquons sur Périphériques> InstallGuestAdditionsCDImage, cela renvoie simplement une erreur comme indiqué ci-dessous : VirtualBox - Erreur : Impossible d'insérer le disque virtuel C : Programmation de fichiersOracleVirtualBoxVBoxGuestAdditions.iso dans la machine Ubuntu Dans cet article, nous comprendrons ce qui se passe lorsque vous Que faire lorsque vous Je ne peux pas installer les ajouts d'invités dans VirtualBox. Impossible d'installer les ajouts d'invités dans VirtualBox Si vous ne pouvez pas l'installer dans Virtua

Que dois-je faire si Baidu Netdisk est téléchargé avec succès mais ne peut pas être installé ? Que dois-je faire si Baidu Netdisk est téléchargé avec succès mais ne peut pas être installé ? Mar 13, 2024 pm 10:22 PM

Si vous avez téléchargé avec succès le fichier d'installation de Baidu Netdisk, mais que vous ne parvenez pas à l'installer normalement, il se peut qu'il y ait une erreur dans l'intégrité du fichier du logiciel ou qu'il y ait un problème avec les fichiers résiduels et les entrées de registre. prenons-en soin pour les utilisateurs. Présentons l'analyse du problème selon lequel Baidu Netdisk est téléchargé avec succès mais ne peut pas être installé. Analyse du problème du téléchargement réussi de Baidu Netdisk mais qui n'a pas pu être installé 1. Vérifiez l'intégrité du fichier d'installation : Assurez-vous que le fichier d'installation téléchargé est complet et n'est pas endommagé. Vous pouvez le télécharger à nouveau ou essayer de télécharger le fichier d'installation à partir d'une autre source fiable. 2. Désactivez le logiciel antivirus et le pare-feu : Certains logiciels antivirus ou pare-feu peuvent empêcher le bon fonctionnement du programme d'installation. Essayez de désactiver ou de quitter le logiciel antivirus et le pare-feu, puis réexécutez l'installation.

Comment installer des applications Android sur Linux ? Comment installer des applications Android sur Linux ? Mar 19, 2024 am 11:15 AM

L'installation d'applications Android sur Linux a toujours été une préoccupation pour de nombreux utilisateurs. Surtout pour les utilisateurs Linux qui aiment utiliser des applications Android, il est très important de maîtriser comment installer des applications Android sur les systèmes Linux. Bien qu'exécuter des applications Android directement sur Linux ne soit pas aussi simple que sur la plateforme Android, en utilisant des émulateurs ou des outils tiers, nous pouvons toujours profiter avec plaisir des applications Android sur Linux. Ce qui suit explique comment installer des applications Android sur les systèmes Linux.

Mar 22, 2024 pm 04:40 PM

Durant leurs études au lycée, certains élèves prennent des notes très claires et précises, prenant plus de notes que d’autres dans la même classe. Pour certains, prendre des notes est un passe-temps, tandis que pour d’autres, c’est une nécessité lorsqu’ils oublient facilement de petites informations sur quelque chose d’important. L'application NTFS de Microsoft est particulièrement utile pour les étudiants qui souhaitent sauvegarder des notes importantes au-delà des cours réguliers. Dans cet article, nous décrirons l'installation des applications Ubuntu sur Ubuntu24. Mise à jour du système Ubuntu Avant d'installer le programme d'installation d'Ubuntu, sur Ubuntu24, nous devons nous assurer que le système nouvellement configuré a été mis à jour. Nous pouvons utiliser le "a" le plus célèbre du système Ubuntu

Comment installer Podman sur Ubuntu 24.04 Comment installer Podman sur Ubuntu 24.04 Mar 22, 2024 am 11:26 AM

Si vous avez utilisé Docker, vous devez comprendre les démons, les conteneurs et leurs fonctions. Un démon est un service qui s'exécute en arrière-plan lorsqu'un conteneur est déjà utilisé dans n'importe quel système. Podman est un outil de gestion gratuit permettant de gérer et de créer des conteneurs sans recourir à un démon tel que Docker. Par conséquent, il présente des avantages dans la gestion des conteneurs sans nécessiter de services backend à long terme. De plus, Podman ne nécessite pas d'autorisations au niveau racine pour être utilisé. Ce guide explique en détail comment installer Podman sur Ubuntu24. Pour mettre à jour le système, nous devons d'abord mettre à jour le système et ouvrir le shell du terminal d'Ubuntu24. Pendant les processus d’installation et de mise à niveau, nous devons utiliser la ligne de commande. un simple

Partage de pratiques de groupe sur la station Dreamweaver CMS Partage de pratiques de groupe sur la station Dreamweaver CMS Mar 18, 2024 am 10:18 AM

Partage de pratiques de groupe Dream Weaver CMS Station Ces dernières années, avec le développement rapide d'Internet, la construction de sites Web est devenue de plus en plus importante. Lors de la création de plusieurs sites Web, la technologie des groupes de sites est devenue une méthode très efficace. Parmi les nombreux outils de création de sites Web, DreamWeaver CMS est devenu le premier choix de nombreux passionnés de sites Web en raison de sa flexibilité et de sa facilité d'utilisation. Cet article partagera une expérience pratique sur le groupe de stations Dreamweaver CMS, ainsi que quelques exemples de code spécifiques, dans l'espoir de fournir une aide aux lecteurs qui explorent la technologie des groupes de stations. 1. Qu'est-ce que le groupe de stations Dreamweaver CMS ? CMS Dream Weaver

Étapes détaillées pour installer le langage Go sur un ordinateur Win7 Étapes détaillées pour installer le langage Go sur un ordinateur Win7 Mar 27, 2024 pm 02:00 PM

Étapes détaillées pour installer le langage Go sur un ordinateur Win7 Go (également connu sous le nom de Golang) est un langage de programmation open source développé par Google. Il est simple, efficace et offre d'excellentes performances de concurrence. Il convient au développement de services cloud, d'applications réseau et. systèmes back-end. Installer le langage Go sur un ordinateur Win7 permet de prendre rapidement en main le langage et de commencer à écrire des programmes Go. Ce qui suit présentera en détail les étapes pour installer le langage Go sur un ordinateur Win7 et joindra des exemples de code spécifiques. Étape 1 : Téléchargez le package d'installation du langage Go et visitez le site officiel de Go

See all articles