Write a C/C++ program that connects to a MySQL server and
checks if the InnoDB plug-in is installed on it. If so, your
program should print the total number of disk writes by MySQL.
Answer Posted / pramod badiger
/* C ++ program that connects to a MySQL server and checks if the InnoDB plug-in is installed on it. If so, your program should print the total number of disk writes by MySQL*/
#include <mysql.h> /*provides C client library to write programs for MySQL*/
#include <stdio.h> /*standard input/output header*/
#include<plugin.h> /* Is used with mysql storage engines like InnoDB plugin*/
int main()
{
MYSQL *conn; /* pointer to connection handler */
MYSQL_RES *res; /*Variable for storing db results*/
MYSQL_ROW row; /*variable for storing the single row of db*/
char *server_name = "localhost"; /* server host */
char *user_name = "root"; /* username (default=login name) */
char *password = "2ba07is045"; /* your login password*/
char *database_name = "mysql"; /*database name*/
conn = mysql_init(NULL); /* initialize connection handler */
/* CONNECTION TO MySQL SERVER */
if (mysql_real_connect(conn, server_name, user_name, password, database_name, 0, NULL,
0)==NULL)
{
/*Connection Failed*/
fprintf (stderr, "mysql_real_connect() failed\n");
/*close the connection*/
mysql_close (conn);
exit (1);
}
/*checking wheather InnoDB plug-in is installed or what */
if (mysql_query(conn, "select *from information_schema.plugins where
plugin_name=’mysql_plugin’ ")!==NULL) /*fuction returns zero if the statement was successful, Nonzero if an error occurred*/
{
printf(“InnoDB plug –in is not installed\n”);
exit(1);
}
/*After invoking mysql_query() or mysql_real_query(), we must call mysql_store_result() or mysql_use_result() for every statement that successfully produces a result set*/
res = mysql_use_result(conn);/* returns MYSQL_RES structure otherwise NULL if an error
occurred*/
printf("Information of installed InnoDB plug-in…………….\n");
/*Prints Plug-in type,name,author,version etc*/
while ((row = mysql_fetch_row(res)) != NULL)
printf("%s \n", row[0]);
mysql_free_result(res);
/* send SQL query SHOW TABLES to list the non-TEMPORARY tables in a given database */
if (mysql_query(conn, "show tables")!=NULL)
/*returns zero if the statement was successful. Nonzero if an error occurred*/
{
fprintf(stderr, "%s\n", mysql_error(conn));
exit(1);
}
res = mysql_use_result(conn);/* returns MYSQL_RES structure otherwise NULL if an error
occurred*
/* Prints tables name in the database */
printf("MySQL Tables in mysql database:\n");
while ((row = mysql_fetch_row(res)) != NULL)
printf("%s \n", row[0]);
mysql_free_result(res);
/*Number of Disk writes By the MySQL*/
if (mysql_query(conn, "SHOW STATUS LIKE 'key_writes%'"))
/*returns zero if the statement was successful. Nonzero if an error occurred*/
{
fprintf(stderr, "%s\n", mysql_error(conn));
exit(1);
}
res = mysql_use_result(conn); /*stores key writes*/
row = mysql_fetch_row(res); /*fetching the result*/
printf(“No of Disk writes\n”)
printf("%s ", row[0]); /*Displaying the No of Disk writes By MySQL*/
mysql_close(conn); /*close the connection*/
}
| Is This Answer Correct ? | 10 Yes | 2 No |
Post New Answer View All Answers
What is function overriding in c++?
What is prototype in c++ with example?
How c functions prevents rework and therefore saves the programers time as wel as length of the code ?
Differentiate between the manipulator and setf( ) function?
How does com provide language transparency?
What do the header files usually contains?
What is the difference between global int and static int declaration?
Are iterators pointers?
Can we use pointers in c++?
Explain some examples of operator overloading?
Differentiate between late binding and early binding. What are the advantages of early binding?
What do you mean by funtion prototype?
What is std namespace in c++?
Difference between pointer to constant and constant pointer to a constant. Give example.
Explain the differences between list x; & list x();.