server running- mysqladmin error- Development Source Tree I'm frustrated!
I have installed mysql using Development Source Tree(version 5.7.5) in Ubuntu 14.04 32-bit.

Starting


I started mysql in safe mode using:

mysqlnew@dpaks:~$ mysqld_safe &amp;
[1] 4548
mysqlnew@dpaks:~$ 141024 11:18:58 mysqld_safe Logging to'/usr/local/mysql/data/dpaks.err'.
141024 11:18:58 mysqld_safe Starting mysqld daemon with databases from /usr/local/mysql/data


However, on entering 'mysqladmin version', I get the following error:

mysqladmin: connect to server at 'localhost' failed
error: 'Access denied for user 'deepaks'@'localhost' (using password: NO)'

If I give a prefix '--skip-grant-tables', mysqladmin starts and gives the following:


  mysqladmin  Ver 8.42 Distrib 5.7.5-m15, for Linux on i686
  
  Copyright (c) 2000, 2014, Oracle and/or its affiliates. All rights reserved.
  
  Oracle is a registered trademark of Oracle Corporation and/or its
  affiliates. Other names may be trademarks of their respective
  owners.
  
  Server version        5.7.5-m15
  
  Protocol version  10
  
  Connection        Localhost via UNIX socket
  
  UNIX socket       /tmp/mysql.sock
  
  Uptime:           7 sec
  
  Threads: 1  Questions: 2  Slow queries: 0  Opens: 84  Flush tables: 1  Open tables: 79  Queries per second avg: 0.285


So, what is happening with the grants table?


Permissions: 


For the purpose of running mysql, I created a user as well as a group by the name mysqlnew. 
My entire installation at /usr/local/mysql is owned by mysqlnew. Permissions 
were set to 777 recursively for the entire directory except for the data directory. 
Data directory was given 744. 
my.cnf was set to 755 for user mysqlnew. Its temp file was owned by root.
mysql.sock had permissions 777


Server is running? Yes, it is! 

Its listed in process status.

mysqlnew  5022  4341  0 12:22 pts/8    00:00:00 /bin/sh /usr/local/mysql/bin/mysqld_safe
mysqlnew  5154  5022  3 12:22 pts/8    00:00:00 /usr/local/mysql/bin/mysqld --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --plugin-dir=/usr/local/mysql/lib/plugin --log-error=/usr/local/mysql/data/dpaks.err --pid-file=/usr/local/mysql/data/dpaks.pid --socket=/tmp/mysql.sock --port=3306


Also, the netstat command gave me the following:

tcp        0      0 localhost:mysql         *:*                     LISTEN      4680/mysqld


Error Log
The error log says the following:

2014-10-24T05:49:00.835656Z 0 [Note] InnoDB: 5.7.5 started; log sequence number 1296682
2014-10-24T05:49:00.854718Z 0 [Warning] Failed to setup SSL
2014-10-24T05:49:00.854736Z 0 [Warning] SSL error: SSL context is not usable without certificate and private key
2014-10-24T05:49:00.854757Z 0 [Note] Server hostname (bind-address): '127.0.0.1'; port: 3306
2014-10-24T05:49:00.854795Z 0 [Note]   - '127.0.0.1' resolves to '127.0.0.1';
2014-10-24T05:49:00.864657Z 0 [Note] Server socket created on IP: '127.0.0.1'.
2014-10-24T05:49:01.399455Z 0 [Note] Event Scheduler: Loaded 0 events
2014-10-24T05:49:01.399499Z 0 [Note] /usr/local/mysql/bin/mysqld: ready for connections.
Version: '5.7.5-m15'  socket: '/tmp/mysql.sock'  port: 3306  Source distribution


which means that server is running! Right?

Conf file Following is an excerpt from my my.cnf file located in etc directory:

[client]

port=3306
socket=/tmp/mysql.sock

[mysqld]

sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES 
user = mysql
bind-address = 127.0.0.1
port = 3306
socket = /tmp/mysql.sock


I also verified that mysql.sock is being created in /tmp directory.

Question: Why am I getting an error when I start mysqladmin without using the prefix '--skip-grant-tables' while the server is running?

Any help would be wholeheartedly appreciated

PS: I have read thoroughly and tried all the solutions given in similar questions here but to no avail.



Update 1

When I gave --skip-grants-table and then when ran 'mysql', its working! But why should I skip it?
OMG! I can't believe I solved it!

I started mysqld. However, client could not be started. When I gave the command 'mysql', the following error was shown:


  ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)
  mysqlnew@dpaks:/usr/local/mysqlnew/bin$ ./mysql 


Why not create a user account in mysql?! Hence, I created a user account 'root' with 'root' as the password by writing the following in a text file named init-file and placing it where the user mysqlnew have access right. Note that they must be in different lines. Also, ensure that the server is not running.


  UPDATE mysql.user SET Password=PASSWORD('root') WHERE User='root';
  FLUSH PRIVILEGES;


I started the server by:


  ./mysqld --basedir=/usr/local/mysqlnew --datadir=/usr/local/mysqlnew/data --query_cache_type=1 --init-file=/home/mysqlnew/init-file &amp;


I then started the client by


  mysqlnew@dpaks:/usr/local/mysqlnew/bin$ ./mysql -u root -p
  Enter password:


Since I have now created a user account in mysql, I don't need to use --skip-grant-tables anymore for starting server.

However, its not yet finished!


  mysql> select 1+1;
  ERROR 1820 (HY000): You must SET PASSWORD before executing this statement


So, now I need to rectify this!


  mysql> SET PASSWORD = PASSWORD('root');
  Query OK, 0 rows affected (0.28 sec)


And that is it! :)