rpm -qa on my host,i see:
mysql-5.1.73-3.el6_5.x86_64
mysql-libs-5.1.73-3.el6_5.x86_64
but i still cant see mysql.h and mysql.so in the lib and include dir.so i google and see other two rpm:
mysql-server-5.1.73-3.el6_5.x86_64
mysql-devel-5.1.73-3.el6_5.x86_64
mysql-client-5.1.73-3.el6_5.x86_64
so
1)what's the meaning of these rpms?to me,mysql-libs-5.1.73-3.el6_5.x86_64 should have the *.so an *.a files installed,but i cant see them on the host?
"yum list installed mysql*" says nothing installed,but "rpm -qa" can see msyql rpms?what the diff of these two cmds?
mysql is the command line client
mysql-client is the same thing for Mandriva
mysql-libs are the shared libraries required for MySQL clients
mysql-server is the MySQL server
mysql-devel are the header files required to develop (compile) MySQL applications
Related
I am trying to install mysql workbench on a system without network. I downloaded the mysql-workbench-community, mysql-community-{server, client, common, libs} which were noted in the "Installing RPM Packages" section of MySQL Install Manual. It states that these are the standard rpm packages needed for a basic functional install of mysql community. So with that I downloaded all the rpm packages and attempted to manually install each using:
sudo rpm -ivh mysql-community-package-name.rpm
Unfortunately I keep getting dependency errors. I found this link to obtain all the dependencies for a package. So on my second attempt I ran the following:
Repoquery -R --resolve --recursive mysql-community-server | xargs -r yumdownloader
Which gave me about 100 rpm packages. I transferred them onto my machine and unfortunately more dependencies like mysql-connectors-community and mysql-=tools-community came up which were never documented or mentioned as dependencies with the script.
What am i doing wrong? Is there a way to download all the rpms and bundle them together as a custom RPM in the future? I see ubuntu has a apt-offline command mentioned here. Is there a similar method I can apply for redhat?
Update1:
I have an idea to create a container rhel7 instance, mounting /root/tmpkg and running this example. But is there another way I should consider?
I have removed MariaDB completely and installed MySQL V.8 but now when I want to install postfix with yum install postfix. Its dependencies are MariaDB-common and MariaDB-compat so it needs them however I have uninstalled it. At last in returns a Transaction check error with this message that
file /etc/my.cnf from install of
MariaDB-common-10.2.23-1.el7.centos.x86_64 conflicts with file from
package mysql-community-server-8.0.15-1.el7.x86_64
How can I fix it?
UPDATE
In this website I got that it needs a file named libmysqlclient.so.18 which must be in /usr/lib64/ directory but it is missed. How can I get this file without running command yum install MariaDB*?
I had the similar issue file /etc/my.cnf from install of mysql-community-server-8.0.16-2.el7.x86_64 conflicts with file from package MariaDB-common-10.3.3-1.el7.centos.x86_64 issued by removing mariadb packages.
yum remove MariaDB-common*
For more information, please refer to Stack Exchange QA
I'm on a 64-bit Amazon Linux machine.
I had previously installed mysql-server 5.5. (using sudo yum install)
However, I soon found out that my application requires MySql-serve 5.6.
So I uninstalled mysql-server 5.5. (using sudo yum remove mysql-server) and now I'm following these instruction to install mysql-server 5.6.
But I'm running into a problem.
when I try to do the second install, I get the following 2 errors:
file /usr/lib64/mysql/libmysqlclient.so.18 from install of mysql-community-libs-5.6.14-3.el6.x86_64 conflicts with file from package mysql55-libs-5.5.46-1.10.amzn1.x86_64
file /etc/my.cnf from install of mysql-community-server-5.6.14-3.el6.x86_64 conflicts with file from package mysql-config-5.5.46-1.10.amzn1.x86_64
Why on earth am I getting these two errors? How do I fix them?
I removed mysql-server-5.5, so why is it conflicting with 5.6?
I did ls on /etc/my.cnf and /usr/lib64/mysql/libmysqlclient.so.18 and the files don't even exist!! If the files don't exist how can they be conflicting with other files?? Who can help explain this?
PS, I tried #msknapp's explanation here: Can't install MySQL 5.6 by RPM, however I don't know what to do after step #1 to install the rpm. I think that step is left unstated.
mysql-server (of whatever version) depends on other packages ( in your case mysql-community-libs mysql-community-server)
When it is installed in the first place with the old version this stuff is installed. When you "uninstall" mysql-server these dependencies are NOT removed.
When you try and install the new version these still existing packages will conflict with the new package. It does not matter if the actual files in the package are there, it is the package and it's listing of what to expect that conflicts.
To resolve your problem figure out what the dependencies of mysql-server were and uninstall them before attemping the install.
This answer https://superuser.com/questions/294662/how-to-get-list-of-dependencies-of-non-installed-rpm-package may be of interest for working out what mysql-server depends on
I am trying to install the Sphinx with MySQL 5.7 I have downloaded the tarball from Sphinx site whenever I am runnig this command sudo ./configure --prefix=/usr/local/sphinx --with-mysql I am getting this error.
configuring Sphinx
------------------
checking whether to use dynamic linking for DB drivers... no
checking for CFLAGS needed for pthreads... -pthread
checking for LIBS needed for pthreads... -lpthread
checking for pthreads... found
checking for pthread_mutex_timedlock... yes
checking whether to compile with MySQL support... dynamic
checking for mysql_config... mysql_config
checking for mysql_real_connect... no
checking for mysql_real_connect... no
checking MySQL include files... configure: error: missing include files.
******************************************************************************
ERROR: cannot find MySQL include files.
Check that you do have MySQL include files installed.
The package name is typically 'mysql-devel'.
If include files are installed on your system, but you are still getting
this message, you should do one of the following:
1) either specify includes location explicitly, using --with-mysql-includes;
2) or specify MySQL installation root location explicitly, using --with-mysql;
3) or make sure that the path to 'mysql_config' program is listed in
your PATH environment variable.
To disable MySQL support, use --without-mysql option.
******************************************************************************
I have tried with installing this `sudo apt-get install libmysqlclient-dev' still it doesn't I have even tried with supplying the MySQL include files path still it doesn't work. can anyone what causing this error ? I am using ubuntu 12.04.
Installing mysql-devel helped me for centos sudo yum install mysql-devel.
Suppose that for ubuntu package name is same.
I am trying to install a software which required MySQL-server, MySQL-client installed on the server so now I want to install MySQL-server and MySQL-client using rpm files "MySQL-server-5.5.17-1.rhel5.x86_64.rpm" and "MySQL-client-5.5.17-1.rhel5.x86_64.rpm".
I have installed MySQL-client but when I try to run mysql-server
*rpm -i MySQL-server-5.5.17-1.rhel5.x86_64.rpm*
it's showing error:
*error: Failed dependencies:
MySQL conflict with mysql-5.0.77-4.el5_6.6.x86_64
MySQL conflict with mysql-5.0.77-4.el5_6.6.i386
MySQL conflict with mysql-server-5.0.77-4.el5_6.6.x86_64*
So how can i solve this problem?
the error given by you *error: Failed dependencies:
MySQL conflict with mysql-5.0.77-4.el5_6.6.x86_64
MySQL conflict with mysql-5.0.77-4.el5_6.6.i386
MySQL conflict with mysql-server-5.0.77-4.el5_6.6.x86_64*
It clear show that the machine you are going to install mysql 5.5 rpm have mysql 5.0.77 installed .
to resolve this problem .
1. you take backup of datadir and my.cnf (if you are using mysql 5.0 db server earlier).
2. remove all mysql 5.0 server packages , to remove these package you should knew what are the packages already installed on machine
to view all mysql package already installed use rpm -qa | grep -i "mysql*" this command show what package is already installed on machine
now you have to remove all package which name shows in above command.
to remove a package/rpm use rpm -e mysql-5.0.** if show error then use
rpm -e --nodeps mysql-5.0.**
we have to remove all packages one by one by using rpm -e .
after successful remove all older version of mysql , now start installation of mysql-5.5*** packages by using rpm -ivh mysql-5.5***.rpm.
First question - is the version of MySQL already installed actually in use or was it simply there as a result of a fresh CentOS install? If the former, try upgrading rather than installing. If the latter, uninstall the old version (possibly using the --no-deps option on rpm) and then install the newer version
Next, are you trying to replace MySQL or install another version alongside it?
If the former, again try upgrading rather than installing. If that's not possible, you're going to have to remove the older version and then install the new version
If the latter, and if it is possible, look at the --prefix and --relocate options in RPM.as they may help.
If you do to mange to get it installed side by side with an older, you'll have fun and games ensuring that the relevant versions are pointing to the correct libraries and that you don't get any corruption between them. Also, you will need to run them so that they listen on separate ports with separate database folders, PID and socket files etc.
Whatever you need to do, do it out of business hours with as many backups as you can do