Class: Mycmd::StatusCommands

Inherits:
Thor
  • Object
show all
Defined in:
lib/mycmd/clis/status_commands.rb

Instance Method Summary collapse

Instance Method Details

#innodb_buffer_hit_rateObject



28
29
30
31
32
# File 'lib/mycmd/clis/status_commands.rb', line 28

def innodb_buffer_hit_rate
  client = Configuration.connect
  rate = client.query("SELECT (1 - ((SELECT G.VARIABLE_VALUE FROM INFORMATION_SCHEMA.GLOBAL_STATUS AS G WHERE G.VARIABLE_NAME = 'INNODB_BUFFER_POOL_READS')/(SELECT G.VARIABLE_VALUE FROM INFORMATION_SCHEMA.GLOBAL_STATUS AS G WHERE G.VARIABLE_NAME = 'INNODB_BUFFER_POOL_READ_REQUESTS'))) * 100 AS rate")
  print_rate(rate, 90)
end

#qcache_hit_rateObject



21
22
23
24
25
# File 'lib/mycmd/clis/status_commands.rb', line 21

def qcache_hit_rate
  client = Configuration.connect
  rate = client.query("SELECT (SELECT (SELECT G.VARIABLE_VALUE FROM INFORMATION_SCHEMA.GLOBAL_STATUS AS G WHERE G.VARIABLE_NAME = 'QCACHE_HITS')/(SELECT SUM(G.VARIABLE_VALUE) FROM INFORMATION_SCHEMA.GLOBAL_STATUS AS G WHERE G.VARIABLE_NAME IN ('QCACHE_HITS','QCACHE_INSERTS','QCACHE_NOT_CACHED')) * 100) AS rate")
  print_rate(rate, 20)
end

#sizeObject



9
10
11
12
13
14
15
16
17
18
# File 'lib/mycmd/clis/status_commands.rb', line 9

def size
  if options["database"].nil?
    sql = "SELECT T.TABLE_SCHEMA, CAST((SUM(T.DATA_LENGTH+T.INDEX_LENGTH)/1024/1024) AS CHAR) AS SIZE_MB FROM INFORMATION_SCHEMA.TABLES AS T GROUP BY T.TABLE_SCHEMA UNION SELECT 'all_databases', CAST((SUM(T.DATA_LENGTH+T.INDEX_LENGTH)/1024/1024) AS CHAR) FROM INFORMATION_SCHEMA.TABLES AS T"
  else
    sql = "SELECT T.TABLE_NAME, CAST(((T.DATA_LENGTH+T.INDEX_LENGTH)/1024/1024) AS CHAR) AS SIZE_MB FROM INFORMATION_SCHEMA.TABLES AS T WHERE T.TABLE_SCHEMA = '#{options['database']}' UNION SELECT 'all_tables', CAST((SUM(T.DATA_LENGTH+T.INDEX_LENGTH)/1024/1024) AS CHAR) FROM INFORMATION_SCHEMA.TABLES AS T WHERE T.TABLE_SCHEMA = '#{options['database']}'"
  end
  client = Configuration.connect
  printer = Printer.new(client.query(sql), true)
  printer.print
end