Bug #79557 perl need by mysql-server
Submitted: 8 Dec 2015 15:20 Modified: 9 Dec 2015 5:25
Reporter: Yurk Tonxylor Email Updates:
Status: Not a Bug Impact on me:
None 
Category:MySQL Server Severity:S2 (Serious)
Version:5.7.9 OS:CentOS (centos 7 mini)
Assigned to: CPU Architecture:Any
Tags: CentOS, dependency, perl

[8 Dec 2015 15:20] Yurk Tonxylor
Description:
My server system is CentOS 7 mini.when i run 
rpm -ivh mysql*.rpm, the package checked dependencies. The result is:
/usr/bin/perl is needed by mysql-commercial-server-5.7.9-1.1.el7.x86_64
perl(Getopt::Long) is needed by mysql-commercial-server-5.7.9-1.1.el7.x86_64
perl(strict) is needed by mysql-commercial-server-5.7.9-1.1.el7.x86_64

but the question is i have installed perl. i compiled perl by myself.
The result of whereis perl:
perl: /usr/bin/perl /usr/local/bin/perl
the result of perl --verion:

This is perl 5, version 22, subversion 0 (v5.22.0) built for x86_64-linux-ld

Copyright 1987-2015, Larry Wall

Perl may be copied only under the terms of either the Artistic License or the
GNU General Public License, which may be found in the Perl 5 source kit.

Complete documentation for Perl, including FAQ lists, should be found on
this system using "man perl" or "perldoc perl".  If you have access to the
Internet, point your browser at http://www.perl.org/, the Perl Home Page.

How to solve the problem? I know one of the solution if just run yum install perl, but the version of perl is so low for me. Can someone tell me another way to deal with?

How to repeat:
A new and original centos 7, compile the last version of perl. the perfix is /usr/local/ but still created a file in /usr/bin. The configure of perl will ask me to create it to run perl both in /usr/bin and /usr/local/bin/
[8 Dec 2015 16:34] Terje Røsten
Hi!

Thanks for you report.

Mixing rpms and local built software outside the package management system in this way is not supported.

Reason is that it's impossible for rpm to understand that perl is installed elsewhere and we can't remove perl deps in MySQL packages and break packages for all standard users.

You have several other options:

a) Use the tarball download available in Linux - Generic drop down menu here:

 https://dev.mysql.com/downloads/mysql/

For commercial version of tarball option, download where you found commercial RPMS.

b) Install rpm and bypass all checks (unsupported):

   rpm -Uvh --nodeps mysql-commercial-server-*

c) Install rpms in proper way (supported):

  yum install  yum install mysql-comm*-{server,client,common,libs}-* 

Also see: https://dev.mysql.com/doc/refman/5.7/en/linux-installation-rpm.html

d) Do as you did with Perl, download source  and build yourself.
   Note: your are then limited to Community version.
[9 Dec 2015 5:25] Yurk Tonxylor
the command "rpm -Uvh --nodeps mysql-commercial-server-*" works perfectly on my server. But i still want to advise oracle to give more freedom and options during the installation.