Commit graph

825 commits

Author SHA1 Message Date
Steve8291
911b1294fa
Fix Replication Status
Reference Issue #553 
Reversing the check for version of mysql or mariadb to use correct command.
2021-08-26 10:21:23 -04:00
Jean-Marie Renouard
3225a954fc
Merge pull request #559 from willamowius/master
fix English grammar
2021-08-25 12:05:36 +02:00
Jean-Marie RENOUARD
1e9920b545 Update Vulnerabilities list
Indenting mysqltuner
Update Usage information
2021-08-25 12:01:28 +02:00
Jan Willamowius
6584233c72 fix English grammar 2021-07-17 08:35:44 +02:00
Jean-Marie Renouard
7aa57fa770 Illegal division by zero at ./mysqltuner.pl line 2745 #558
Wrong table cache hit rate calculation #548
2021-07-15 17:03:00 +02:00
Jean-Marie Renouard
7a2a0f1b13 Illegal division by zero at ./mysqltuner.pl line 2745 #558
Wrong table cache hit rate calculation #548
2021-07-15 17:02:24 +02:00
Jean-Marie Renouard
78d8f3ed85 Version 1.8.0: Support MariaDB 10.6 Update needed for MariaDB 10.6 #557 2021-07-13 18:56:52 +02:00
Jean-Marie Renouard
656a7e51ed Update Vulnerabilities list
Indenting mysqltuner
Update Usage information
2021-07-02 18:31:21 +02:00
Jean-Marie Renouard
8f479b06f6 Increment version 2021-07-02 18:17:57 +02:00
Jean-Marie Renouard
2079639e6b Wrong table cache hit rate calculation #548 2021-07-02 18:17:25 +02:00
Jean-Marie Renouard
213211aecc improve FreeBSD support a bit (patch included) #549 2021-07-02 16:55:43 +02:00
Jean-Marie Renouard
47cf0669fc failed to execute: SHOW SLAVE HOSTS #553 2021-07-02 16:41:36 +02:00
Jean-Marie Renouard
c9345a1380 1.7.26 is fixing minor glitch with DROP USER #555 2021-07-02 16:22:51 +02:00
Jean-Marie RENOUARD
5aa880afbc Wrong recommendation "thread_pool_size between 16 and 36 for InnoDB usage" for Percona Server #551 2021-05-03 12:00:02 +00:00
Jean-Marie Renouard
447652d325 Update mysqltuner.pl 2021-05-03 11:06:23 +02:00
Jean-Marie Renouard
ac34523609 Update mysqltuner.pl 2021-03-30 11:54:30 +02:00
Jean-Marie Renouard
68e5902169 Update mysqltuner.pl 2021-03-30 11:44:08 +02:00
Jean-Marie Renouard
a8fc0c2639 Update mysqltuner.pl
Adding more information about flow control current value
2021-03-08 18:29:03 +01:00
Jean-Marie Renouard
b0cfbd802b Duplicate recommendation/check #545
Duplicate recommendation/check #545
2021-03-08 18:02:22 +01:00
Jean-Marie Renouard
5a399f6006 Duplicate recommendation/check #545
Duplicate recommendation/check #545
2021-03-08 18:01:44 +01:00
Jean-Marie RENOUARD
ef66fb274c Update Vulnerabilities list
Indenting mysqltuner
Update Usage information
2021-02-05 15:25:09 +01:00
Daniel Black
e29b76fca1 empty passwords - use exact user/host quoted 2021-02-05 09:46:37 +11:00
Daniel Black
0be85cbb9f user host recommend - RENAME USER
Altering mysql.user tables isn't something users should do.

RENAME USER has existed for a long time, use this instead.

Also change SpecificDNSorIp because DNS based grants are
a horrible idea, fragile, and could be disabled with
--skip-name-resolve.

closes #536
2021-02-05 09:37:10 +11:00
Daniel Black
5c307d1813 correct messages on no InnoDB
enginestats are only populated if tables exist of that type.

Look at default_storage_engine if defined to communicate the default
storage engine.

closes #469
2021-02-01 11:42:44 +11:00
Daniel Black
938b434e41 extend server-log for journal/container/pods
Default to reading last 30000 lines.

If reading from file estimate that average line
length is 80 characters and read based that
far back from the end of file.
2021-01-30 12:51:28 +11:00
Daniel Black
c3da0b013c add server-log option for explict server log
This allows a user to specify a logrotated file
or another file that isn't discoverable from
server log_error system variable or other defaults.

close #504
2021-01-30 10:24:03 +11:00
Jean-Marie Renouard
47ebbbca75
Merge pull request #535 from grooverdan/snap
skip snap filesystems
2021-01-28 18:21:43 +01:00
Jean-Marie Renouard
22789d1c7f
Merge pull request #537 from grooverdan/min_dblist
minimal database list retrieval
2021-01-28 18:21:11 +01:00
Jean-Marie Renouard
1f879d110b
Merge pull request #538 from grooverdan/json_total_tables
Add total_tables to json output
2021-01-28 18:19:09 +01:00
Jean-Marie Renouard
374ef59417
Merge pull request #533 from grooverdan/exec_perms
add execute permissions to mysqltuner.pl
2021-01-28 18:18:17 +01:00
Jean-Marie Renouard
49c2f6e930 Update mysqltuner.pl 2021-01-28 18:15:53 +01:00
Daniel Black
72952b5873 Add total_tables to json output
closes #484
2021-01-28 19:13:02 +11:00
Daniel Black
7a94bd5388 minimal database list retrieval
Information schema access isn't particularly well optimized.

As such, at least in older versions, fetching from the information_schema.TABLES
would involve opening every table.

The ANSI SQL standards SCHEMATA provides a quicker way, and we can reuse it.
2021-01-28 18:44:17 +11:00
Daniel Black
59ce37b3a1 skip snap filesystems 2021-01-28 18:01:59 +11:00
Daniel Black
2c8f5e81cf add execute permissions to mysqltuner.pl
closes #531
2021-01-28 16:22:16 +11:00
Jean-Marie Renouard
285ba51330
Merge pull request #528 from grooverdan/gtidmode_mariadb
mariadb gtid mode - base off gtid_current_pos.
2021-01-27 21:31:41 +01:00
Jean-Marie Renouard
d9e00040c8
Merge pull request #527 from grooverdan/mariadbnames
mariadb is using its on name in mariadb/mariadb-admin
2021-01-27 21:31:16 +01:00
Jean-Marie Renouard
f2c8ca86b2
Merge pull request #526 from grooverdan/anonuser
anonymous users - remove password checks
2021-01-27 21:29:38 +01:00
Jean-Marie Renouard
8fb9195c4f
Merge pull request #525 from grooverdan/qc
query_cache off with query_cache_type=OFF OR query_cache_size=0
2021-01-27 21:28:18 +01:00
Daniel Black
9d1d19c97d mariadb gtid mode - base off gtid_current_pos.
gtid_strict_mode isn't sufficient a test for
MariaDB's GTID mode. The gtid_current_pos
however is always non-blank if GTID is enabled.

closes #513
2021-01-27 18:03:41 +11:00
Daniel Black
fa8deec762 mariadb is using its on name in mariadb/mariadb-admin
The mysql client, mysql, in mariadb is starting to be labeled mariadb.
Likewise mysqladmin is getting called mariadb-admin. Lets check
for these names as well.
2021-01-27 17:26:29 +11:00
Daniel Black
2f45f349c9 anonymous users - remove password checks
For anonymous users, those with user='', having a recommendation
to set their passwords, and warning that the password is the same
as the username is a little excessive since there's already a
recommendation to drop the user.

So let's remove those recommendation so we don't see:

[!!] User '@localhost' has user name as password.
[!!] User '@localhost.localdomain' has user name as password.

or:

    Set up a Secure Password for @localhost user: SET PASSWORD FOR ''@'SpecificDNSorIp' = PASSWORD('secure_password');
    Set up a Secure Password for @localhost.localdomain user: SET PASSWORD FOR ''@'SpecificDNSorIp' = PASSWORD('secure_password');

Lets keep the focus on:
-------- Security Recommendations ------------------------------------------------------------------
[!!] User ''@'localhost' is an anonymous account. Remove with DROP USER ''@'localhost';
[!!] User ''@'localhost.localdomain' is an anonymous account. Remove with DROP USER ''@'localhost.localdomain';
2021-01-27 17:15:03 +11:00
Daniel Black
3ac95cd046 query_cache off with query_cache_type=OFF OR query_cache_size=0
From the MySQL and MariaDB code (same - 5.5 version):
https://github.com/mysql/mysql-server/blob/5.5/sql/sql_cache.h#L560
https://github.com/MariaDB/server/blob/5.5/sql/sql_cache.h#L572

This is used:
https://github.com/mysql/mysql-server/blob/5.5/sql/sql_prepare.cc#L3058
(same in MariaDB code)

The size=0 and type=0 are both sufficent conditions for the query
cache to be disabled. As such lets consider it ok if its disabled
only in one place. This is the case in mariadb where type=0 (OFF)
is the default as is a non-zero query-cache size.
2021-01-27 17:02:58 +11:00
Daniel Black
99e5c83779 Aria/MyISAM cleanup
Include calculation of Aria index size based of *.MAI files.

Use find -0 | xargs -0 to allow for space containing names.
Quote datadir in find in case it had spaces.

Use xargs -r (GNU extension) (supported Linux, FreeBSD, OpenBSD,
NetBSD, not Solaris, not OSX) to not run if there's no files that match.
This prevents it running the total of the current directory if
there are no M[YA]I files.

A total size of 0 for Aria or MyISAM indexes isn't a problem
because:
* MySQL-5.[567] used MyISAM system tables which have indexes, so 0
wasn't possible (except for remote user without mysql.* access).
* 0 size of index is equally likely to be 0 tables of this type
  (e.g. MySQL-8.0, or MariaDB-10.4+ (Aria default, not MyISAM)).

Setting total_aria_indexes=1 when it was previously 0 is misleading.

Aria was never called AriaDB despite the apparent convention in
other storage engines so use just Aria, or Aria Storage Engine
in messages.

Differentiate between Aria not available and disabled in report.
2021-01-27 15:56:10 +11:00
Sergey Dryabzhinsky
ce23262b27 Fix else+if construction 2020-12-26 12:32:59 +03:00
Sergey Dryabzhinsky
b1a1829362
For #518 - use new schema for mariab-10.2+
And check for one more column existance
2020-12-26 12:02:51 +03:00
Jean-Marie Renouard
aac1ab2b4d
Merge pull request #514 from grooverdan/mdb10.4-secure-users
secure users MariaDB-10.4+ / MySQL auth socket
2020-12-08 08:30:23 +01:00
Jean-Marie Renouard
643e5e4e98
Merge pull request #515 from grooverdan/delanonymous
DROP USER to delete anonymous accounts
2020-12-08 08:30:04 +01:00
Daniel Black
6f966dee45 MariaDB-10.1 EOL, MariaDB-10.5 is GA 2020-12-08 15:25:59 +11:00
Daniel Black
1bb30f508e DROP USER to delete anonymous accounts
DROP USER has existed for a very long time.

Use the QUOTE sql function to ensure accounts are correctly quoted
and this helps the delete recommendation.
2020-12-08 14:37:26 +11:00
Daniel Black
79a4403c9c MySQL-5.7/8.0+ auth_socket is safe
MySQL has auth_socket as its plugin compared to unix_socket on MariaDB
so accept that as a valid reason for having no authentication.

MySQL [(none)]> show create user dan@localhost;
+-----------------------------------------------------------------------------------------------------------------+
| CREATE USER for dan@localhost                                                                                   |
+-----------------------------------------------------------------------------------------------------------------+
| CREATE USER 'dan'@'localhost' IDENTIFIED WITH 'auth_socket' REQUIRE NONE PASSWORD EXPIRE DEFAULT ACCOUNT UNLOCK |
+-----------------------------------------------------------------------------------------------------------------+
1 row in set (0.000 sec)

MySQL [(none)]> select user,host,plugin from mysql.user;
+---------------+-----------+-----------------------+
| user          | host      | plugin                |
+---------------+-----------+-----------------------+
| root          | localhost | mysql_native_password |
| mysql.session | localhost | mysql_native_password |
| mysql.sys     | localhost | mysql_native_password |
| dan           | localhost | auth_socket           |
| expiretest    | %         | mysql_native_password |
| expiretest    | localhost | mysql_native_password |
+---------------+-----------+-----------------------+
6 rows in set (0.001 sec)

MySQL [(none)]> select version();
+-----------+
| version() |
+-----------+
| 5.7.31    |
+-----------+
2020-12-08 14:18:03 +11:00
Daniel Black
0eef9260a8 mariadb-10.4+ empty passwords
MariaDB-10.4 migrated their authentication to a global_priv table in JSON
format. Also locked user accounts where added. By default the mariadb.sys
is a locked user without a password and there as the owner of the mysql.user
view. As its hazardous for a user to modify this we exclude locked accounts
but still search for mysql_native_password plugin without authentication.

We use versioned comments to process all other versions. The 5.5+ MySQL
version comment is also read by MariaDB (ref: https://mariadb.com/kb/en/comment-syntax/
enabling the processing of plugins on other version that have plugins.

While this branch doesn't yet apply to MySQL-8.0 yet, we add support
for the locked user accounts in MySQL-8.0+ in a versioned comment
(not read by MariaDB).
2020-12-08 14:00:39 +11:00
Jean-Marie Renouard
de4b145e96 Remove innodb_buffer_pool_instances recommendations for MariaDB #512
Remove innodb_buffer_pool_instances recommendations for MariaDB #512
2020-11-16 20:22:24 +01:00
Jean-Marie Renouard
b5718d0e2f Merge branch 'master' of https://github.com/major/MySQLTuner-perl 2020-11-05 17:29:32 +01:00
Jean-Marie Renouard
cff819d46f Change version number 2020-11-05 17:29:26 +01:00
Jorge Vallecillo
d2a8f0b60a Remove references to the domain mysqltuner.com. #501 2020-09-03 10:17:58 -06:00
Jean-Marie Renouard
b6f8f9f9a3 Merge branch 'master' of https://github.com/major/MySQLTuner-perl 2020-05-04 11:02:49 +02:00
Jean-Marie Renouard
00ce968c6a Removing windows end of lines 2020-05-04 11:01:34 +02:00
Jean-Marie Renouard
6038bd7749 Update mysqltuner.pl
Back to MYsqltuner 1.7.19
2020-05-03 23:12:19 +02:00
Jean-Marie Renouard
9236ec0f80 Update mysqltuner.pl
Fix error
2020-05-03 23:07:42 +02:00
Jean-Marie RENOUARD
1e8b32a253 merged 2020-05-02 16:01:37 +02:00
root
12ae60c6f2 local commit 2020-05-02 15:56:26 +02:00
Kovalkov Dmitrii
e7609d7a91 And for debug line ignore these lines 2020-01-23 16:37:45 +03:00
Kovalkov Dmitrii
dc4aa248c8 Ignore
200122 12:09:15 mysqld_safe Logging to '/var/log/mysql/error.log'.
when we count errors in log
2020-01-23 11:24:56 +03:00
Jean-Marie Renouard
7965211fa0
Merge pull request #466 from Ruzgfpegk/bugfix/mariadb-sys-update
Suggest using mariadb-sys from FromDual in script
2020-01-09 22:16:39 +01:00
Ruzgfpegk
8ffd81475a
Updates link to MyISAM table_cache scalability doc
Fixes #465 .
2020-01-09 15:53:56 +09:00
Ruzgfpegk
3555142ead
Suggest using mariadb-sys from FromDual in script
Follows #443 and #444.
2020-01-09 15:04:04 +09:00
jfcoz
c5765f0213 Include max_allowed_packet in thread memory size
Fix https://github.com/major/MySQLTuner-perl/issues/378
Fix https://github.com/major/MySQLTuner-perl/issues/456
2019-12-12 13:31:23 +01:00
Jean-Marie Renouard
345bf1ae24 Issue Typo in commit 6f6130b (ymsql => mysql) (#459) 2019-10-17 17:39:45 +02:00
155da8c074 SCALAR ref while strict refs 2019-10-04 12:10:16 +02:00
Jean-Marie Renouard
6f6130b12b Missing password is not recognized #412 2019-10-03 23:15:31 +02:00
Jean-Marie Renouard
851cd817de Update version command #428 2019-10-03 22:33:22 +02:00
Jean-Marie Renouard
66f2ee40be About innodb_log_file_size changing recommendation #408 2019-10-03 22:10:18 +02:00
Jean-Marie Renouard
792b46b03c About innodb_log_file_size changing recommendation #408 2019-10-03 22:06:51 +02:00
Jean-Marie Renouard
6aa887d5a5 Use of uninitialized value $engine in concatenation (.) or string #350 2019-10-03 21:52:30 +02:00
Jean-Marie Renouard
143b80b3a6 Add recommendation on table_definition_cache #433 2019-10-03 21:29:03 +02:00
Jean-Marie Renouard
a421f73e26 Add note about join_buffer_size #434 2019-10-03 21:04:12 +02:00
Jean-Marie Renouard
d1f39e9a00 Script is failing on MySQL 5.6.10(AWS Aurora) #435 2019-10-02 01:13:34 +02:00
Jean-Marie Renouard
f18a3ef33f Update mysqltuner.pl
FAIL Execute SQL / return code: 256 #442
disable column type to ENUM suggestion #356
2019-10-02 00:44:54 +02:00
Jean-Marie Renouard
a9bed2ffa0 Percona Server 8.0 - better support
Lot of bug fixes for percona.
2019-10-02 00:07:46 +02:00
Jean-Marie Renouard
b8f191d180 Update error log file analysis 2019-09-26 00:41:10 +02:00
Jean-Marie Renouard
7332f8d5c4 Wrong report of InnoDB Storage engine status #450
Good message is
-------- InnoDB Metrics ----------------------------------------------------------------------------
[--] Skipped due to --skipsize option
2019-09-25 23:50:15 +02:00
Jean-Marie Renouard
ebc6619e4f Bug fix #453 2019-09-25 23:29:22 +02:00
Jean-Marie Renouard
60df6043b1 Update Vulnerabilities list
Indenting mysqltuner
Update Usage information
2019-09-25 20:05:45 +00:00
Billy Noah
066acb0940
Update mysqltuner.pl
Check to make sure mysql.user has a column called 'password'.  Adjust security_recommendations queries accordingly.

This should address issues:
https://github.com/major/MySQLTuner-perl/issues/427
https://github.com/major/MySQLTuner-perl/issues/441
https://github.com/major/MySQLTuner-perl/issues/442
2019-09-10 16:06:58 -04:00
Eduardo Broto
ece5671292 Escape identifiers in table column metrics
Otherwise some queries may fail if reserved words were used as field, table or
database names.
2019-07-10 17:25:23 +02:00
Myrdhin
b10c90ccf8 Fix typo on myvar 2019-05-15 11:01:46 +02:00
Myrdhin
49a1b603da Fix error when innodb_stats_on_metadata not defined 2019-05-15 10:52:51 +02:00
Jean-Marie Renouard
4a01df4a04
Merge pull request #431 from atombrella/should_be
Corrected grammar for innodb_buffer_pool_size recommendation.
2019-03-22 10:20:32 +01:00
Mads Jensen
320e1fda8e Changed http to https. Fixed broken link to original script. 2019-03-22 07:32:47 +01:00
Mads Jensen
0fae7c5a91 Corrected grammar for innodb_buffer_pool_size recommendation. 2019-03-22 07:23:08 +01:00
Jean-Marie Renouard
fce4eda2aa Illegal division by zero #423 2019-03-06 13:28:28 +00:00
Jean-Marie Renouard
4c14ba9718 Missing password is not recognized #412 2019-03-06 13:10:17 +00:00
Tim Hughes
69d4e2fbea A bit of work on the html report template 2018-11-30 13:06:49 +00:00
Jean-Marie Renouard
d7c906c9c4 Uncaught exception from user code (#414) 2018-11-26 15:25:54 +00:00
Jean-Marie Renouard
177c9f6695 ignore galera check when wsrep_on = 0 #353 2018-11-26 13:41:36 +00:00
Jean-Marie Renouard
87eb96a485 Sys schema on MariaDB #362 2018-11-26 13:31:59 +00:00
Jean-Marie Renouard
1b9e4e75ba Last modification related to options 2018-11-26 12:57:11 +00:00
tcraxs
c0b2f67a2f
fix defect link to mysql documentation - #408
Fix defect link to the mysql documentation. Choose to set the link to version 8 as in Issue major#408 mention.
Links to: https://dev.mysql.com/doc/refman/8.0/en/innodb-redo-log.html
2018-11-14 16:54:05 +01:00
Jean-Marie Renouard
c8fb973bf8 MySQLTuner dont understand Thread Pool in Percona Server 5.7 #386 2018-09-26 09:10:09 +00:00
Jean-Marie Renouard
dab1e7e960 MySQLTuner dont understand Thread Pool in Percona Server 5.7 #386 2018-09-26 07:31:19 +00:00
Jean-Marie Renouard
b8224beb85 bug fix in calcualation of wsrep_slave_threads value #305 2018-09-26 07:25:58 +00:00
Jean-Marie Renouard
c8bb7050ab wsrep_slave_threads info and test modification 2018-09-25 17:19:19 +02:00
Jean-Marie Renouard
6081df99a9 Wrong warning about table_open_cache #364 2018-09-25 17:05:43 +02:00
Jean-Marie Renouard
580a707ef7 wsrep_slave_threads #305 2018-09-25 16:58:36 +02:00
Jean-Marie Renouard
469a205ac0 Uptime info" 2018-09-23 19:48:09 +00:00
Jean-Marie Renouard
be4c965ea9 adding better json outputfile option 2018-09-23 18:19:06 +00:00
Jean-Marie Renouard
79d91e5b07 Template staff 2018-09-23 09:50:33 +00:00
Jean-Marie Renouard
b8ef183bcf Hope to add MySQL 8 support! #377
MySQL 8: disabling Query cache recommandations
MySQL 8: check password disabled due to new authentication storage model - Help wanted
2018-09-23 07:45:25 +00:00
Jean-Marie Renouard
5d4e891ea1 ignore galera check when wsrep_on = 0 #353 2018-09-20 14:34:07 +00:00
Jean-Marie Renouard
08cb34587b Fixing important performance issue during collecting metrics 2018-09-20 13:11:34 +00:00
Jean-Marie Renouard
e76f3a25b1 New option tbstat 2018-09-20 12:51:07 +00:00
Jean-Marie RENOUARD
4951c920c5 Incorrectly assumes 32bit architecture on s390x systems #390 2018-08-07 15:52:14 +02:00
Jean-Marie RENOUARD
dc86f73d1b wsrep_slave_threads #305 2018-08-07 09:00:21 +02:00
Jean-Marie RENOUARD
2bd7e7bf71 wsrep_slave_threads #305 2018-08-06 14:53:12 +02:00
Jean-Marie RENOUARD
7429b7c15c Minor accessing undefined variable bug to fix eventually #383 2018-08-06 12:38:06 +02:00
Jean-Marie RENOUARD
e7980611a1 # 393 Peak and max memory usage estimated incorrectly 2018-08-06 11:53:02 +02:00
Maxximou5
ad74a7dc6d Spelling and grammar
- Fixed: Minor spelling, grammar, and accidental return
2018-07-28 16:50:06 -07:00
Kovalkov Dmitrii
d02feeedc8
Minor fix undefined value 2018-07-26 23:00:04 +03:00
Kovalkov Dmitrii
010656345d
Switch human readable for Data (not need round) 2018-07-05 17:48:45 +03:00
Jean-Marie RENOUARD
a43032b863 #377 adding 0 as query cache efficiency for MySQL 8 2018-06-29 14:06:42 +02:00
Jean-Marie RENOUARD
9cf4dd4453 Ticket #383 Minor accessing undefined variable bug to fix eventually 2018-06-29 12:16:30 +02:00
Martin Kiesel
9a1d331ebb
End sentence with a period
Fixed example output:

```
[!!] User 'a@localhost' has user name as password.
[!!] User 'b@%' does not specify hostname restrictions.
```
2018-06-05 14:12:54 +02:00
Artem S. Tashkinov
593928c646
Some fixes 2018-05-27 14:03:29 +00:00
Drew Schatt
e46309a09f Spelling fixes.
Physical
theoretically
MariaDB
2018-05-21 16:10:22 -07:00
Jean-Marie RENOUARD
1b68fd55a3 Update staff 2018-04-26 14:15:59 +02:00
Jean-Marie RENOUARD
61cdd6c0d0 Trim sub with emtpy string display error #376 2018-04-04 15:20:27 +02:00
Jean-Marie RENOUARD
b9721ef91b MySQL enterprise: Column recommandations #375 2018-04-04 15:17:57 +02:00
Jean-Marie RENOUARD
9cf48b52e0 Clean up staff 2018-03-30 15:44:40 +02:00
Jean-Marie Renouard
7ae81143b9 Removing error from Use of uninitialized value $engine in concatenation (.) or string #350 2018-03-27 12:33:31 +00:00
Jean-Marie RENOUARD
3551d0d28e Avoid use of uninitialized value 2018-03-20 08:53:15 +01:00
Jean-Marie RENOUARD
de1bd2015e update staff 2018-03-19 17:17:11 +01:00
Jean-Marie RENOUARD
031f741296 Some information about replication 2018-03-19 17:08:12 +01:00
Jean-Marie RENOUARD
ff2a47e461 Issue #373 Fix for password column on MySQL 5.7 2018-03-19 16:34:41 +01:00
Jean-Marie RENOUARD
f0394b67cc Issue #373 Fix for password column on MySQL 5.7 2018-03-19 16:33:04 +01:00
Jean-Marie RENOUARD
bca1ad849d Change year reference 2018-02-23 16:42:24 +01:00
Jean-Marie RENOUARD
760adf20b5 Latest version has a regression with colored outout #371 2018-02-23 12:34:32 +01:00
Jean-Marie RENOUARD
94f8dad080 Wrong sort order in MySQLTuner report #363 2018-02-22 18:42:32 +01:00
Jean-Marie RENOUARD
35c4200813 Issue #364 2018-02-22 16:58:59 +01:00
Jean-Marie RENOUARD
0e8fcbf52d Issue #369 2018-02-22 16:11:42 +01:00
Jean-Marie RENOUARD
8fda1dc284 Issue #371 2018-02-22 15:35:31 +01:00
Jean-Marie RENOUARD
6d95d8642c Update code, doc and vulnerabilities 2018-02-22 15:29:33 +01:00
Jean-Marie RENOUARD
86b0a1949f Merge branch 'master' of https://github.com/major/MySQLTuner-perl 2018-02-22 15:24:32 +01:00
Jean-Marie RENOUARD
50f3a0d965 Small quotes issue 2018-02-22 15:24:20 +01:00
Jean-Marie Renouard
75f4bc623a
Merge pull request #370 from jsoref/spelling
Spelling
2018-02-22 15:22:30 +01:00
Jean-Marie Renouard
5b2918296f
Merge pull request #367 from martinellimarco/master
Proposed fix for #268
2018-02-22 15:21:01 +01:00
Jean-Marie RENOUARD
13c885a529 Issue #372 2018-02-22 15:18:39 +01:00
Josh Soref
3b76498260 spelling: release 2018-02-18 04:59:50 +00:00
Josh Soref
878de6b7e1 spelling: recommendations 2018-02-18 04:59:38 +00:00
Josh Soref
d714eb9a57 spelling: efficiency 2018-02-18 04:44:13 +00:00
Josh Soref
89027cebe1 spelling: deactivated 2018-02-18 04:43:14 +00:00
Josh Soref
940c25c355 spelling: authentication 2018-02-18 04:41:14 +00:00
Marco Martinelli
06f20b1fbb Proposed fix for #268 2018-02-14 22:40:14 +01:00
Marco Martinelli
9f7a599195 Proposed fix for #268 2018-01-18 07:39:52 +01:00
Jean-Marie RENOUARD
073a6244a5 Update git ignorewq 2018-01-10 15:14:19 +01:00
Jean-Marie Renouard
f530ee787d
Update mysqltuner.pl 2017-12-20 09:33:54 +01:00
Mark Hyde
53cdb0e0b9 Ignore password check for auth_pam_compat plugin
- Users authenticating via auth_pam_compat will use pam for
authentication rather than the mysql password field, so the latter is
expected to be empty.
2017-11-28 13:11:39 +00:00
Wesley Schaft
60660c7d54 Changed gcs.limit to gcs.fc_limit, as there's no gcs.limit parameter. 2017-11-16 09:13:40 +01:00
Thomas Meyer
45c48832c4 Read log file by line
Changes the log file reading from loading the entire file into
memory to reading line by line.
2017-10-05 17:05:20 -07:00
Thomas Meyer
c45ac0925d Determine real log_error path.
Determines real log_error path if mysql variable not set or file
is relative and does not exist in current working directory.
Otherwise return back original value.
2017-09-24 05:45:13 -07:00
Daniel Kolvik
2b7828237d Add support to pass ssl public key to mysql connection. Makes it possible to run against servers only accepting connection over SSL. 2017-09-15 10:53:57 +02:00
Peter 'Pessoft' Kolínek
b5d1650f59 add general recommendation for innodb log file changes
add information to INTERNALS.md about innodb log file to buffer pool ratio
fix buffer pool typos in comments
fix code formatting a bit
2017-09-09 13:22:30 +02:00
Jean-Marie RENOUARD
17fddf2079 Issue #341 debian credentials not overridable from commandline 2017-08-25 11:12:10 +02:00
Jean-Marie RENOUARD
3c3fdcd936 Performance Schema Issue #328 2017-07-31 14:27:15 +02:00
Jean-Marie RENOUARD
d5c4ae85f8 Merge branch 'master' of https://github.com/major/MySQLTuner-perl 2017-07-24 15:12:49 +02:00
Jean-Marie RENOUARD
d82ea42215 Issue Performance Schema Issue #328 2017-07-24 15:12:36 +02:00
Peter 'Pessoft' Kolínek
8d4c50cc2c Fixes calculation and display of ratio between InnoDB log files size and InnoDB buffer pool size 2017-07-11 21:41:09 +02:00
kostya v
52fb453f27 Read the value of wsrep_slave_threads from the right place. 2017-07-10 16:57:15 +03:00
Jean-Marie RENOUARD
77bcb72702 Update vulnerabilities list 2017-07-05 11:51:33 +02:00
Jean-Marie Renouard
b16dfb6254 Merge pull request #330 from vladisalv/master
fixing documentation
2017-06-19 11:37:07 +02:00
Andrew Daugherity
9b2fcd85f0 fix micro version comparison
Both the minor *and* the major versions need to match before checking
the micro version.
2017-06-16 16:25:44 -05:00
Vladislav Toigildin
84c1bbafae refactoring: pod documentation 2017-06-15 21:57:07 +03:00
Vladislav Toigildin
1aec239039 output help message using pod2usage instead duplicating pod documentation in usage() function 2017-06-15 21:52:14 +03:00
Vladislav Toigildin
cb0acfe319 fix: add newlines before pod command paragraph + newline before __END__ 2017-06-15 20:53:20 +03:00
Askar Timirgazin
821de219db Fix for messages about defragmented tables
Schema name must be divided from table name, now both of them joined, so you can't copy-paste recomendations to mysql console.
Was:  OPTIMIZE TABLE `test_db.test_table`; -- can free xx MB
Must: OPTIMIZE TABLE `test_db`.`test_table`; -- can free xx MB
2017-05-23 17:26:20 +03:00
Jean-Marie RENOUARD
8d178444d5 Merge branch 'master' of https://github.com/major/MySQLTuner-perl 2017-05-19 09:36:43 +02:00
Jean-Marie RENOUARD
5fce4fc0ee Adding a note for XtraDB 2017-05-19 09:36:33 +02:00
root
29fb53694e Support column analysis with produre analyse 2017-05-19 02:06:36 +02:00
Jean-Marie RENOUARD
21860fe395 Incorrect suggestion for ratio InnoDB log file size / InnoDB buffer pool size #322 2017-05-17 17:38:17 +02:00
Jean-Marie RENOUARD
f180eae082 Missing argument requirement for cvefile in mysqltuner help #321
Schedule for releases on github #320
2017-05-17 16:50:44 +02:00
Tim Stoop
dbe7ac8818 Fix typos in Index metrics 2017-04-24 22:53:08 +02:00
Jean-Marie Renouard
dda90d669c Default host should be 127.0.0.1 #312 2017-04-21 00:33:20 +02:00
root
dc7ffb01dc bug fix on swappinness to 10 for Galera 2017-04-21 00:19:55 +02:00
root
21af94158d Add quotes #311
Use https instead of http #317
typo, space missing before is #315
2017-04-21 00:13:45 +02:00
謝致邦 (XIE Zhibang)
f4a108c2f6 Disable query cache. 2017-04-19 21:25:45 +08:00
謝致邦 (XIE Zhibang)
2f3832b6f7 The query cache should be disabled in MariaDB 10.1 2017-04-19 20:01:02 +08:00
RENOUARD Jean Marie Ext IMT/OINIS
5cc86c82b5 bad calculation for pct_wkeys_from_mem #303 2017-03-14 18:26:44 +01:00
RENOUARD Jean Marie Ext IMT/OINIS
2e45139751 Merge 2017-03-14 18:23:23 +01:00
RENOUARD Jean Marie Ext IMT/OINIS
596918c3c3 Version 1.7.1 2017-03-14 18:21:19 +01:00
Christoph Hansen
b7e1a99240 Check whether hyperthreading is enabled or not.
Since calculating the recommended value for "wsrep_slave_threads" using the number of physical cores is best practice for Intel CPUs where hyperthreading is activated.
2017-03-13 17:22:05 +01:00
root
e44c29bf23 MErge beetween all staff related to Galera Cluster 2017-03-08 19:18:47 +01:00
Jean-Marie Renouard
9651818d77 Merge branch 'master' into master 2017-03-08 18:55:01 +01:00
Oscar A. Figueroa
24b901363c Bugfix resolve #308 : gcs.fc_factor parameter evaluation and the message report, which referencing wsrep_slave_threads instead. 2017-03-08 11:50:02 +01:00
jfcoz
f61cbce4f8 add checks for wsrep_slave_FK_check and innodb_autoinc_lock_mode when wsrep_slave_threads > 1 2017-03-07 17:53:36 +01:00
Oscar A. Figueroa
adb33d3c37 Resolved issue #304 2017-03-07 12:48:43 +01:00
root
f04b32c854 Use of uninitialized value #304
tidify script
2017-03-06 15:17:43 +01:00
root
48be29a288 issue #300 Performance schema shouldn t be installed on 5.5 version. 2017-02-14 09:40:52 +01:00
root
59238301bf Adding new indicators for Galera Cluster' 2017-02-13 18:08:28 +01:00
Greg Kennedy
02f13fcb52 Do not test skip_name_resolve if skip_networking is ON
MySQL name resolution only applies to TCP/IP connections ( see lines 504 and 599 of mysql-server/sql/sql_connect.cc ).  Thus there is no reason to test, or suggest, setting skip_name_resolve if skip_networking exists and is turned on.
2017-02-08 11:10:48 -06:00
Jean-Marie RENOUARD
871d984d1a Add advice for performance schema 2017-02-07 06:56:17 +01:00
Jean-Marie RENOUARD
490da41bcd Adding #289 adding warning info
#271 adding message prescision for in advces message
2017-02-06 22:34:08 +01:00
Bruno Perel
97d1ea347f Fix typo 2017-01-27 15:57:57 +01:00
root
67e78592da #285 Argument "xxxM" isn t numeric in numeric ge (>=) 2017-01-23 17:32:47 +01:00
root
def15c2f8f Adding recommandations for Galera 2017-01-13 12:23:05 +01:00
git001
e454b30c61 Fix Argument "NULL" isn't numeric
Argument "NULL" isn't numeric in numeric ge (>=) at ./mysqltuner.pl line 305 (#1)
    (W numeric) The indicated string was fed as an argument to an operator
    that expected a numeric value instead.  If you're fortunate the message
    will identify which operator was so unfortunate.
2016-12-28 10:52:33 +01:00
Sergei A Mamonov
bb6b7ca623 Disable zero prototypes in few functions 2016-12-27 13:16:17 +03:00
i5513
be1f4b48c4 Allow to connect via socket with not default port
Seems like it is necessary to specify the port when you have 2 instances runing and you want to connect via socket.
2016-12-20 10:35:41 +01:00
Sergei A Mamonov
1b04540a4c fix check innodb_file_per_table with skip-innodb 2016-12-12 14:19:49 +03:00
root
7f02c8655c Merge branch 'master' of https://github.com/major/MySQLTuner-perl 2016-12-08 11:29:59 +01:00
root
22709a4517 #265 wrong table name 2016-12-08 11:29:50 +01:00
jfcoz
2dfb2a2cc9 query cache hit rate was not calculated when badprint "Query cache may be disabled by default due to mutex contention" 2016-12-08 09:45:38 +01:00
Sergei A Mamonov
4bc3a50c2d fix code style in log_file_recommandations 2016-12-07 16:31:51 +03:00
Sergei A Mamonov
d3ea7ea342 fix error on show last start/shutdowns 2016-12-07 16:23:53 +03:00
root
2861883432 Perl Error #280 2016-12-05 09:31:03 +01:00
root
4d20ffea0c Doesn't work for remote server on AWS #279 2016-12-05 09:27:54 +01:00
root
7a0565d9e5 Detect Error and warning in error log #252
Detect last MySQL / MariaDB last shutdown and startup #253
2016-12-02 16:21:58 +01:00
root
7acf66f73c Bug on log file calculation 2016-12-02 15:27:38 +01:00
root
f7699b4515 #278 Escaping password items 2016-12-02 15:24:52 +01:00
git001
caa785ec59 Fix Argument "NULL" isn't numeric
Argument "NULL" isn't numeric in numeric ge (>=) at mysqltuner.pl line 288 (#1)
    (W numeric) The indicated string was fed as an argument to an operator
    that expected a numeric value instead.  If you're fortunate the message
    will identify which operator was so unfortunate.
[--]  +-- ROWS : 0
Argument "NULL" isn't numeric in numeric eq (==) at mysqltuner.pl line 343 (#1)
    (W numeric) The indicated string was fed as an argument to an operator
    that expected a numeric value instead.  If you're fortunate the message
    will identify which operator was so unfortunate.
[--]  +-- ENGIN : 0 (NULL)
Argument "NULL" isn't numeric in numeric lt (<) at mysqltuner.pl line 3847 (#1)
2016-11-28 20:39:47 +01:00
root
ce7eefb3da Bug fix on Galera Gcache mem calculation 2016-11-28 17:51:46 +01:00
root
5be96339a1 Incorrect innodb log file size calculation #271 2016-11-28 17:48:22 +01:00
root
eac905b632 MariaDB GTID mode #272 2016-11-28 17:39:41 +01:00
Artur Penttinen
5a6742ee85 Hiding username and password from commandline
It is possible to spy username and password if command run
with --user/-pass options (ps -C mysqltuner.pl -F).
To hiding these added options --userenv/--passenv for
transfer MySQL username and password via environment
variables.
2016-11-16 11:05:33 +02:00
Michael R Mawhinney Jr
947856901a Minor spelling correction 2016-11-09 22:29:34 -05:00
root
e6b57a84d3 New indicators from performance schema 2016-11-03 10:36:59 +01:00
root
5872fcc1ee #265 TOP 15 queries with temp table to disk
#260 Memory used > 100% ?
#258
2016-11-02 21:16:54 +01:00
root
6b9920902b Last modifications 2016-11-02 20:02:41 +01:00
Jean-Marie Renouard
51ea5925d1 Merge pull request #263 from henriquemoody/patch-1
Use single quotes around password
2016-10-27 21:17:13 +02:00
Henrique Moody
5a3873ece4 Use single quotes around password
Password may contain characters, like `$` and `!`, that may be interpreted by
the shell. Prevent it to happen by using single quotes.
2016-10-27 15:28:41 +02:00
Karl Chen
05c1e6eb75 Non importance changes 2016-10-24 17:25:07 +08:00
Karl Chen
f68b731498 Non importance changes 2016-10-24 17:21:56 +08:00
Karl Chen
4f1a6ec38b Non importance changes 2016-10-24 07:36:05 +08:00
Karl Chen
f4e46cdbc0 Non importance changes 2016-10-24 07:34:19 +08:00
Karl Chen
915be0fbe4 Non importance changes 2016-10-24 00:38:32 +08:00
Karl Chen
301e5f2291 Non importance changes 2016-10-24 00:32:48 +08:00
Karl Chen
7b3f2ce9a9 Something wrong to print 2016-10-23 13:42:01 +08:00
root
6a70adebd3 Full support performance schema
Update vulnerability list
Updade INTERNALS doc.
2016-10-18 14:55:13 +02:00
root
bbc04d848f #258 new rule for innodb log file size (25% of Buffer pool size) 2016-10-18 14:25:02 +02:00
root
cff9e62933 Adding new indicators from sys schema 2016-10-17 17:04:10 +02:00
root
c10c7e81ec Redundant indexes" 2016-10-10 19:03:40 +02:00
root
e684a45120 * TOP 15 most read tables
* TOP 15 most modified tables
* TOP 15 high select latency tables
* TOP 15 high insert latency tables
* TOP 15 high update latency tables
* TOP 15 high delete latency tables
2016-10-10 18:39:56 +02:00
root
101c13baed Typo fix 2016-10-10 18:18:26 +02:00
root
f826adecf2 * TOP 15 most read indexes
* TOP 15 most modified indexes
* TOP 15 higth select latency index
* TOP 15 higth insert latency index
* TOP 15 higth update latency index
* TOP 15 higth delete latency index
2016-10-10 18:14:52 +02:00
root
ad9228d029 * Event per wait total latency
* Event per wait read latency
* Event per wait write latency
2016-10-10 16:54:45 +02:00
root
16f0d5d9ff Adding * Event Wait by read bytes
* Event Wait by write bytes
2016-10-10 16:00:15 +02:00
root
7b46762a1a Adding pfs indicators related to File IO 2016-10-10 15:34:29 +02:00
root
50ece21b2d New indicators from performance schema
On the road to 1.7.x version
2016-10-06 10:44:58 +02:00
root
30616932d7 Adding Performance stat per user 2016-09-27 16:07:26 +02:00
root
20b9fa2a19 Included a lot of new indicators for PFS when using --pfstat or --verbose option 2016-09-26 18:32:35 +02:00
root
8263cbda27 Update doc 2016-09-26 16:00:20 +02:00