Local MYSQL won't start OS X 10.9.3 - mysql

I have downloaded MYSQL via:
bash <(curl -Ls http://git.io/eUx7rg)
Prior to installing I've completely uninstalled previous components via:
http://community.jaspersoft.com/wiki/uninstall-mysql-mac-os-x
I've had to modify permissions in order to see the log file and see primarily permissions errors. Also, when I try:
type mysql
The result, in terminal, points to a directory that does not exist on my local system. When I trace the path to the executable (via Finder) I get the following error in Terminal:
/usr/local/mysql-5.6.19-osx10.7-x86_64/bin/mysql ; exit;
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/mysql/mysql.sock' (2)
logout
Also, when I look at my.conf file, everything is asterisked out:
# For advice on how to change settings please see
# http://dev.mysql.com/doc/refman/5.6/en/server-configuration-defaults.html
[mysqld]
# Remove leading # and set to the amount of RAM for the most important data
# cache in MySQL. Start at 70% of total RAM for dedicated server, else 10%.
# innodb_buffer_pool_size = 128M
# Remove leading # to turn on a very important data integrity option: logging
# changes to the binary log between backups.
# log_bin
# These are commonly set, remove the # and set as required.
# basedir = .....
# datadir = .....
# port = .....
# server_id = .....
# socket = .....
# Remove leading # to set options mainly useful for reporting servers.
# The server defaults are faster for transactions and fast SELECTs.
# Adjust sizes as needed, experiment to find the optimal values.
# join_buffer_size = 128M
# sort_buffer_size = 2M
# read_rnd_buffer_size = 2M
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES

Had the same problem. Had to switch machines for a week and installing MySQL on "OS X 10.9.3 (13D65)" would not work. Had to wipe the account clean and reinitialize the user to get it going. Apparently there was still an old mysql which wasn't uninstalled completely. Google "uninstall mysql manually"
The access denied happens sometime when the grant is given to the interface 127.0.0.1 but not to localhost.
Try granting access to %, 127.0.0.1, and localhost.

Related

Mariadb Database gets stuck with wordpress "Creating sort index"

Hello dear StackOverflow community,
I have a large WordPress site that now crashes the database by creating dozens of Creating sort index tasks with:
SELECT t.*, tt.*
FROM wp_terms AS t
INNER JOIN wp_term_taxonomy AS tt ON t.term_id = tt.term_id
WHERE tt.taxonomy IN ('categories')
ORDER BY t.name ASC
Those run for more than 20 seconds +. Afterwards its "sending data" with the same SQL query. The server is using an AMD epyc cpu and shouldn't have any problems (even though the database is large) and it did not have until it suddenly seems to be stuck.
Shouldn't it be caching this query anyways?
The mariadb my.cf config looks like:
#
# These groups are read by MariaDB server.
# Use it for options that only the server (but not clients) should see
# this is read by the standalone daemon and embedded servers
[server]
# this is only for the mysqld standalone daemon
[mysqld]
#
# * Basic Settings
#
user = mysql
pid-file = /run/mysqld/mysqld.pid
basedir = /usr
datadir = /var/lib/mysql
tmpdir = /tmp
lc-messages-dir = /usr/share/mysql
lc-messages = en_US
skip-external-locking
# Broken reverse DNS slows down connections considerably and name resolve is
# safe to skip if there are no "host by domain name" access grants
#skip-name-resolve
# Instead of skip-networking the default is now to listen only on
# localhost which is more compatible and is not less secure.
bind-address = 127.0.0.1
#
# * Fine Tuning
#
#key_buffer_size = 128M
#max_allowed_packet = 1G
#thread_stack = 192K
#thread_cache_size = 8
# This replaces the startup script and checks MyISAM tables if needed
# the first time they are touched
#myisam_recover_options = BACKUP
#max_connections = 100
#table_cache = 64
#
# * Logging and Replication
#
# Both location gets rotated by the cronjob.
# Be aware that this log type is a performance killer.
# Recommend only changing this at runtime for short testing periods if needed!
#general_log_file = /var/log/mysql/mysql.log
#general_log = 1
# When running under systemd, error logging goes via stdout/stderr to journald
# and when running legacy init error logging goes to syslog due to
# /etc/mysql/conf.d/mariadb.conf.d/50-mysqld_safe.cnf
# Enable this if you want to have error logging into a separate file
#log_error = /var/log/mysql/error.log
# Enable the slow query log to see queries with especially long duration
#slow_query_log_file = /var/log/mysql/mariadb-slow.log
#long_query_time = 10
#log_slow_verbosity = query_plan,explain
#log-queries-not-using-indexes
#min_examined_row_limit = 1000
# The following can be used as easy to replay backup logs or for replication.
# note: if you are setting up a replication slave, see README.Debian about
# other settings you may need to change.
#server-id = 1
#log_bin = /var/log/mysql/mysql-bin.log
expire_logs_days = 10
#max_binlog_size = 100M
# * Character sets
#
# MySQL/MariaDB default is Latin1, but in Debian we rather default to the full
# utf8 4-byte character set. See also client.cnf
character-set-server = utf8mb4
collation-server = utf8mb4_general_ci
#
# * InnoDB
#
# InnoDB is enabled by default with a 10MB datafile in /var/lib/mysql/.
# Read the manual for more InnoDB related options. There are many!
# Most important is to give InnoDB 80 % of the system RAM for buffer use:
# https://mariadb.com/kb/en/innodb-system-variables/#innodb_buffer_pool_size
#innodb_buffer_pool_size = 8G
# this is only for embedded server
[embedded]
# This group is only read by MariaDB servers, not by MySQL.
# If you use the same .cnf file for MySQL and MariaDB,
# you can put MariaDB-only options here
[mariadb]
# This group is only read by MariaDB-10.5 servers.
# If you use the same .cnf file for MariaDB of different versions,
# use this group for options that older servers don't understand
[mariadb-10.5]
I restarted mariadb, but the advisor mentions a huge rate of opening tables (same for files). The server is running only for 15 minutes. Is this due to the short time or do I have to change the settings (before the huge amount of Creating sort index tasks, the server was stable)
Issue:
The rate of opening tables is high.
Recommendation:
Opening tables requires disk I/O which is costly. Increasing table_open_cache might avoid this.
Justification:
Opened table rate: 1.26 per second, this value should be less than 10 per hour
Used variable / formula:
Opened_tables / Uptime
Test:
value*60*60 > 10
I would be awesome if somebody has an idea, what to do about that problem

How to access a remote MySQL database from another Ubuntu server?

On server 1 (lets call it 1.1.1.1 , I have Wordpress installed, which has its own MySQL database.
On server 2 (lets call it 2.2.2.2) , I have only MySQL on Ubuntu, with PhpMyAdmin installed.
I am attempting to connect FROM Wordpress (functions.php) FROM server 1, to server 2's MySQL database through the following:
$mydb = new wpdb('rruser','password','dbname', '2.2.2.2');
Following this connection, everything else is fine.
Upon loading the shortcode through a page, the page does not load the content in the shortcode. I am assuming the connection has timed out.
Please can someone advise how I can go about connecting to an external database?
I have created a new user on "2.2.2.2" and granted priveleges to "dbname".
CREATE USER 'rruser'#'1.1.1.1' IDENTIFIED WITH mysql_native_password AS '***';`
`GRANT USAGE ON *.* TO 'rruser'#'1.1.1.1' REQUIRE NONE WITH MAX_QUERIES_PER_HOUR 0 MAX_CONNECTIONS_PER_HOUR 0 MAX_UPDATES_PER_HOUR 0 MAX_USER_CONNECTIONS 0;`
`GRANT ALL PRIVILEGES ON `rail`.* TO 'rruser'#'1.1.1.1';
My MySQL my.cnf file looks like the following on the remote server which I would like to connect to (2.2.2.2)
#
# The MySQL database server configuration file.
#
# You can copy this to one of:
# - "/etc/mysql/my.cnf" to set global options,
# - "~/.my.cnf" to set user-specific options.
#
# One can use all long options that the program supports.
# Run program with --help to get a list of available options and with
# --print-defaults to see which it would actually understand and use.
#
# For explanations see
# http://dev.mysql.com/doc/mysql/en/server-system-variables.html
#
# * IMPORTANT: Additional settings that can override those from this file!
# The files must end with '.cnf', otherwise they'll be ignored.
#
!includedir /etc/mysql/conf.d/
!includedir /etc/mysql/mysql.conf.d/
[mysqld]
innodb_file_per_table = 1
Many thanks in advance.
I have resolved my problem by adding bind-address to 2.2.2.2's my.cnf file, as well as allowing mysql's ports in UWF, including TCP and 8080.
Upon rebooting my server the problem is resolved

MySQL Connection Refused

i've looked up every tutorial on how to fix this and nothing worked so far,
I'm getting this error
No connection could be made because the target machine actively refused it
i'm using linux centos7 mysql version
mysql Ver 14.14 Distrib 5.6.32, for Linux (x86_64) using EditLine wrapper
blow is my.cnf
also i had to create my own my.cnf as when i installed mysql it didn't have one located i put this into etc/my.cnf it's running the cnf as it's taken mysql out of strict mode.
# For advice on how to change settings please see
# http://dev.mysql.com/doc/refman/5.6/en/server-configuration-defaults.html
# *** DO NOT EDIT THIS FILE. It's a template which will be copied to the
# *** default location during install, and will be replaced if you
# *** upgrade to a newer version of MySQL.
[mysqld]
# Remove leading # and set to the amount of RAM for the most important data
# cache in MySQL. Start at 70% of total RAM for dedicated server, else 10%.
# innodb_buffer_pool_size = 128M
# Remove leading # to turn on a very important data integrity option: logging
# changes to the binary log between backups.
# log_bin
# These are commonly set, remove the # and set as required.
# basedir = .....
# datadir = .....
# port = .....
# server_id = .....
# socket = .....
bind-address = 0.0.0.0
#skip-networking
# Remove leading # to set options mainly useful for reporting servers.
# The server defaults are faster for transactions and fast SELECTs.
# Adjust sizes as needed, experiment to find the optimal values.
# join_buffer_size = 128M
# sort_buffer_size = 2M
# read_rnd_buffer_size = 2M
sql_mode=NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
Ok, I am assuming that you have installed this on a completely different machine (as opposed to a Virtual Host on your Windows box).
You need to make sure that port 3306 is open on your DB server first and foremost. You can check this with a port checker (there are plenty of free ones online).
Then, with the user you are trying to connect with, you need to make sure that user has access from the origin IP address (i.e. the IP on your Windows machine). This can be done with the following code from the mysql prompt.
GRANT ALL PRIVILEGES ON <your db name>.* TO <your user>#<your ip> IDENTIFIED BY '<your password>';
A less secure option would be to allow all inbound IPs by using the % wildcard.
After this you need to run the following command.
FLUSH PRIVILEGES;
That should be it.

mysqldump unknown variable sql_mode error

Help requested on 'mysqldump' error
I'm in the hell figuring out why following error happens. So, please, anybody help me. My writing: A, B, C, D
s
A. Here is my.ini file
# For advice on how to change settings please see
# http://dev.mysql.com/doc/refman/5.6/en/server-configuration-defaults.html
# *** DO NOT EDIT THIS FILE. It's a template which will be copied to the
# *** default location during install, and will be replaced if you
# *** upgrade to a newer version of MySQL.
[mysqld]
# Remove leading # and set to the amount of RAM for the most important data
# cache in MySQL. Start at 70% of total RAM for dedicated server, else 10%.
# innodb_buffer_pool_size = 128M
# Remove leading # to turn on a very important data integrity option: logging
# changes to the binary log between backups.
# log_bin
# These are commonly set, remove the # and set as required.
basedir = C:\mysql-5.6.27
datadir = C:\mysql-5.6.27\data
port = 3306
max_allowed_packet=16M
character-set-client-handshake = false
init_connect="SET collation_connection=utf8_general_ci"
init_connect="SET NAMES utf8"
character-set-server=utf8
collation-server=utf8_general_ci
skip-character-set-client-handshake
default-character-set=utf8
#bind-address = 0.0.0.0
#explicit_defaults_for_timestamp=1
[mysql]
default-character-set = utf8
[mysqldump]
#sql_mode=NO_AUTO_VALUE_ON_ZERO
========================== end of ini file
B. I executed the following command ==>
C:\mysql-5.6.27\bin> mysqldump -uroot -p --databases parkinglot > prugio.sql
C. Here is the response on my mysqldump
mysqldump: unknown variable 'sql+mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES'
D. For your reference, I upgraded mysql version from 5.6.24 to 5.6.27.
Thank you very much in advance.
I just found answer myself. I had my.ini in two plases. one in C drive and the other one in D drive. That caused the confusion. As soon as I renamed one of the my.ini, the problem didn't happen.

MySQL Schema loses tables when I connect it to local host

I'm working with MySQL Workbench 6.0. I built a schema from a .sql file. It has 1024 tables. when I connect it to local host only 47 tables seem to make it. I check with this command
SELECT COUNT(*) FROM information_schema.tables WHERE table_schema = "my_schema";
Why would it just leave behind the other 977 tables? is it a memory allocation thing? or an issue with my configuration?
Edit 1
result from the MySQL command
SHOW ENGINES;
Edit 2
I checked out the .ini file that my local connection looks at. It uses the default one in
C:\Program Files\MySQL\MySQL Server 5.6
This is its content of my-default.ini
# For advice on how to change settings please see
# http://dev.mysql.com/doc/refman/5.6/en/server-configuration-defaults.html
# *** DO NOT EDIT THIS FILE. It's a template which will be copied to the
# *** default location during install, and will be replaced if you
# *** upgrade to a newer version of MySQL.
[mysqld]
# Remove leading # and set to the amount of RAM for the most important data
# cache in MySQL. Start at 70% of total RAM for dedicated server, else 10%.
# innodb_buffer_pool_size = 128M
# Remove leading # to turn on a very important data integrity option: logging
# changes to the binary log between backups.
# log_bin
# These are commonly set, remove the # and set as required.
# basedir = .....
# datadir = .....
# port = .....
# server_id = .....
# Remove leading # to set options mainly useful for reporting servers.
# The server defaults are faster for transactions and fast SELECTs.
# Adjust sizes as needed, experiment to find the optimal values.
# join_buffer_size = 128M
# sort_buffer_size = 2M
# read_rnd_buffer_size = 2M
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
so because this is the file its reading and I've not made any changes is there a memory issue for a database that has the large number of tables like mine? Or should I be leaving this allone for my local connection and be changing the settings through MySQL Workbench?
Edit 3
Blow is the results of SQL command
SHOW GRANTS;
First confirm that sql file has all 1024 tables.
Second check that the engine of tables in sql file is present or not in your database server with command SHOW ENGINES: