zabbix error The frontend does not match Zabbix database - zabbix

install zabbix at Configure DB connection error The frontend does not match Zabbix database.
i use mysql
What is the meaning of this?

This means that the version of the Zabbix database does not match what Zabbix frontend is expecting. For instance, if you are upgrading from Zabbix 2.2 to Zabbix 3.0, then you will get a similar message (together with the current database version and the expected database version) until you upgrade the database (this is done by simply running the new version of Zabbix server).
In this particular case, if you are installing for the first time, then you probably have not imported schema.sql, images.sql, and data.sql files yet. In that case, please consult "Installation from sources" and "Database creation scripts" sections in the online Zabbix documentation.

In case you have been using Ubuntu 14.04 and trying to do a new install of Zabbix 3.0 then you should first populate the database with the sql file provided in /usr/share/doc/zabbix-server-mysql/create.sql. After that it should work.

installation error: frontend does not match Zabbix database
read more here:
drop existing zabbix db
then
shell> mysql -u<username> -p<password>
mysql> create database zabbix character set utf8 collate utf8_bin;
mysql> quit;
shell> mysql -u<username> -p<password> zabbix < database/mysql/schema.sql
# stop here if you are creating database for Zabbix proxy
shell> mysql -u<username> -p<password> zabbix < database/mysql/images.sql
shell> mysql -u<username> -p<password> zabbix < database/mysql/data.sql
after that step 3 is ok...

I was upgrading a debian distro from 7 to 8 that had Zabbix installed. When this error appeared, what I did was to install the zabbix-server-mysql service by typing:
apt-get install zabbix-server-mysql
And that solved the problem.

Related

MySQL CLI: unknown option: enable-cleartext-plugin

This question has been asked a couple of times out here, but I'm not able to enable cleartext plugin. I'm using mySQL CLI to access an RDS(Engine version: 5.7.26) instance using the command
mysql -h $RDSHOST -u <Username> --password=$TOKEN --enable-cleartext-plugin --port=3306 --ssl-ca=<path to pem file>
I get the following error:
mysql: unknown option '--enable-cleartext-plugin'
I installed mySQL by running yum install curl mysql -y. But in the logs I see maria-db being installed, is there something wrong out here. Thanks in advance.
Note: If you're using a MariaDB client, the --enable-cleartext-plugin option isn't required.
According to the article found here: https://aws.amazon.com/premiumsupport/knowledge-center/users-connect-rds-iam/
tl;dr: do not use the mariadb client to connect to an AWS RDS instance using IAM Authentication.
Here's a quick answer for your issue, and another for the one you'll hit after removing the flag:
You are definitely running a mariadb client, you can confirm it with mysql --version.
On the paper mariadb always enable plugins, thus does not provide the enable-cleartext-plugin flag on the client.
However —after losing several hours yesterday on the same issue— it appears that the client does not even use the cleartext plugin when you try to authenticate against a AWS RDS instance with IAM Authentication (tested with mariadb 10.3 and 10.5 clients against a MySQL 8.0.23 server).
In the end you must use the 'official' mysql client for this usecase. Some linux distributions provide this client through another package like Percona-Server (which is the case for Arch Linux and Exherbo at least).
For me I had to re execute this then I could login with the special user:
ALTER USER 'myuser' IDENTIFIED WITH AWSAuthenticationPlugin as 'RDS';

mysql from windows cmd opens old version

I use windows and I have previously installed mysql 5.5 for some legacy project, and now I want to use 5.7 for a new one, so I installed 5.7 in another directory, on another port and having different data directory, my problem is when i launch mysql from cmd like:
W:\MySQL57\bin> mysql -u root -p
It results in this:
W:\MySQL57\bin>mysql -u root -p
Enter password: *****
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 3
Server version: 5.5.54-log MySQL Community Server (GPL)
And I am definitely sure that MySQL57 is directory for 5.7 MySQL, so what's wrong with mysql command line tool and how can i fix it to be able to use both mysqls in cmd?
The mysql command you are using is probably the 5.7 version, you can check this with :
W:\MySQL57\bin>mysql -v
But this is just the client !
The problem is your server version, you may have 2 versions running (5.5 and 5.7), and as you haven't specified the port you are using the default one which is used by the first server (5.5).
Try to find the port for the second version (3307 ?) or kill the 5.5 server when you are connecting to the 5.7.
You are calling the default mysql set in Environment Variable. If you want to use a specific mysql, you need to provide the path too
W:\MySQL57\bin>"W:\MySQL57\bin\mysql" -u root -p
In case of mysql not working, you can call mysqld.
If you want mysql 5.7 to be default, just change it from Environment Variable https://dev.mysql.com/doc/mysql-windows-excerpt/5.7/en/mysql-installation-windows-path.html

tab-completion only works for table names (mysql 5.5 on ubuntu 14.04)

I'm used to having tab-completion for mysql keywords, database names etc in mysql, but in my freshly installed mysql (via 'apt-get install mysql-server') it only works for table names, not database names.
I am supplying the --auto-rehash option when starting the mysql command line client interface. I'm aware that I can set this as a default via my.cnf, but I want to get it working first.
The mysql docs tell me that the auto-rehash feature "requires a MySQL client that is compiled with the readline library."
'aptitude show mysql-client' tells me that I have 5.5.43-0ubuntu0.14.04.1.
For debugging purposes, how can I know if my mysql-client has readline, and if not, how do I get one that does?
Resolved: I wasn't specifying a database name when invoking the mysql command line interface!
Auto-completion works as expected if I go in as:
mysql -u root -p mysql # or
mysql -u root -p mydatabase
as opposed to:
mysql -u root -p
(and --auto-rehash clearly is on by default as per the docs)

mysql command line client for linux

I just installed mysql 5.6 in a new CentOS 7 linux installation. I want to use the mysql command line client that I have been used to using in windows, but I cannot seem to find it. Is there a mysql command line client for linux? If so, how do I make sure that I have it? And how do I open it up in the GUI?
You can open MySql command line utility using following command
mysql -u user_name -p
It will ask for password for user_name. If password is not set call as follows
mysql -u user_name
First make sure the service is running :
sudo systemctl start mysqld
Then make sure to run the security script that will remove some dangerous defaults and lock down access to our database system a little bit.
sudo mysql_secure_installation
Now you can use the command line tool
mysql --user=user_name --password=your_password db_name

Logging in MariaDB in Centos

I am using Centos 6.5 and have just installed MariaDB-sever and MariaDB-client a while ago.
The first problem is that I start MariaDB by the command /etc/init.d/mysqld start instead of /etc/init.d/mysql start (because there is no mysql file in init.d). So currently I am baffled because I don't know what I started is MySql or MariaDB.
That leads to the second problem. According to their Knowledge base, I tried mysql -u root -p to log in. But it displayed MySql instead of MariaDB, about which I feel wrong:
Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MySQL connection id is 5
Server version: 5.1.73 Source distribution
MySQL [(none)] >
So, am I running MariaDB or MySQL?
Yes, what you have started is wrong - it is running MySQL 5.1.73. You should uninstall your "distribution" provided MySQL (which ships with CentOS 6.5) and just install MariaDB.
You can do this by looking at: rpm -qa |grep -i mysql and removing those packages. Just do a clean install of MariaDB and you should be fine.
Some distributions ship /etc/init.d/mysqld, some - /etc/init.d/mysql . It makes no difference, just different script names.
MariaDB origins from MySQL, so if you see MariaDB in the prompt then it's MariaDB. You will never see MariaDB in Oracle's MySQL.