1044 - Access denied for user 'user'#'localhost' to database 'db' - mysql

I tried a lot to import the sql script to create database and tables through phpmyadmin in the new site I hosted. But i'm getting the error,
1044 - Access denied for user 'user'#'localhost' to database 'db'
I tried to create a sample db directly : create database sampled; I'm getting the same access denied error.
I'm not able to grant privileges to the user also, i'm getting the same access denied error.
Following is the output of show grants command,
show grants;
GRANT USAGE ON . TO 'someuser'#'localhost' IDENTIFIED BY PASSWORD 'somepw'
GRANT ALL PRIVILEGES ON someuser\_%.* TO 'someuser'#'localhost'
Any help would be appreciated. thank you.

If you are using Godaddy then don't directly go to phpMyAdmin and run the sql command.
You have to go to MySQL® Databases section and create a database there.
Then create a user and give it the permission to access the database you just created.
Now you can go to phpMyAdmin and write your SQL commands.
Hope this helps

It is clear that the user someuser do not have proper privilege over the database db. You need to grant privileges for the user over the database to correct this issue.
If you do bot have administrative rights contact your admin for granting privileges to someuser on that db

For me the problem is I'm not having permissions to Create new Databasename or even Modify the name of the Database. You can contact your admin to avail privileges or if you want to quickly import the .sql file... then you can open the .sql file with text editor and find the following line:
CREATE DATABASE IF NOT EXISTS `enter the existing db name` DEFAULT CHARACTER SET latin1 COLLATE latin1_swedish_ci;
USE `enter the existing db name`;
After that try to import the .sql file...now you can successfully import all the tables!

This error can be avoided in the beginning when creating the user account. Following commands must be used to create user account having all the PRIVILEDGES.
CREATE USER 'demouser'#'localhost' IDENTIFIED WITH mysql_native_password BY '***';
GRANT ALL PRIVILEGES ON *.* TO 'demouser'#'localhost' WITH GRANT OPTION;
ALTER USER 'demouser'#'localhost' REQUIRE NONE WITH MAX_QUERIES_PER_HOUR 0 MAX_CONNECTIONS_PER_HOUR 0 MAX_UPDATES_PER_HOUR 0 MAX_USER_CONNECTIONS 0;
CREATE DATABASE IF NOT EXISTS 'demouser';
GRANT ALL PRIVILEGES ON `demouser`.* TO 'demouser'#'localhost';

Must Ensure that your User_Name, Password and Database name are correct.
If you are Deal with database 'sampled' then type 'sampled' in query instead of 'db' also must ensure that you don't have to use quota(') in Statement.

you have not exported database from localhost or from web server correctly follow these steps go to localhost database click export tab than select 'Custom - display all possible options 'check box few options will open in section 'output' change compression none to zipped and now click go button at bottom it will properly export your database you can now import to hosting or anywhere you want with no errors

I had the same problem i solve it buy change the GRANTEE and made the user he can do all the operation in PhpMyAdmin ,follow the steps :
Enter to mysql in root permission but :
sudo mysql
Enter the password, and type this :
SELECT * FROM information_schema.user_privileges;
And see the user in IS_GRANTABLE is he yes or no.
If he yes then see the PRIVILEGE_TYPE what it might it be just tow operation if it's true add the last operations.
and see this link to change IS_GRANTABLE from no to yes.
I wish this could help you.

I started getting this error message for no reason at all. Solved by using MySQL and the Server menu option; Selected my bitnami_wordpress schema; selected the bn_wordpress user; then picked the Administrative Roles tab and granted access to this user. I had to do this to all of the users that the access was removed from.

Related

Mysql Mariadb user not able to access DB

I created a schema and granted its permission to a specific user:
GRANT ALL PRIVILEGES ON USED_CARS.* TO ANDREW#LOCALHOST;
The database is created with root user and then granted these permissions to another user. now when I swith to another account I can list the schema with SHOW SCHEMAS; query however cannot switch to that DB with use USED_CARS; query.
Following error pops up:
ERROR 1044 (42000): Access denied for user 'ANDREW'#'localhost' to database 'USED_CARS'
What am I missing here? Thanks for the help in advance.
Sometimes depending on the configuration of server, you can use localhost or the ip:127.0.0.1
Could you try with this ...
GRANT ALL PRIVILEGES ON USED_CARS.* TO 'ANDREW'#'%';

CREATE DATABASE using phpmyadmin in online server

I install phpMyAdmin on my subdomain for my clients to access their Databases, Because I can't give my Cpanel Login to them.
But my problem is when they need to create a new database, they can't do it from phpMyAdmin and they face this error
ALTER USER 'root'#'localhost' IDENTIFIED WITH mysql_native_password BY
'root';
And I try to create a DB using phpMyAdmin, login from cPanel but I had the same error.
No worry I can create and manage user and DB from cPanel, But the problem is I have to create a database myself when my client needs DBS.
So has I have an option for this, any type?
In your case, this error means the MySQL user does not have the required privilege to create a database. These are some options you could do:
Grant their user all privileges on all databases (not recommended):
GRANT ALL PRIVILEGES ON . TO 'sserver_sserver'#'localhost';
Create the database yourself and give their user all privileges on that specific database:
CREATE DATABASE my;
GRANT ALL PRIVILEGES ON my.* TO 'sserver_sserver'#'localhost';
Give their user all privileges to databases beginning with a certain prefix such as their business name which will allow them to create and work on as many databases as they need:
GRANT ALL PRIVILEGES ON 'businessname_%'.* TO 'sserver_sserver'#'localhost';

#1044 - Access denied for user 'someusr'#'localhost' to database 'somedb'

I'm trying to give admin rights to MySQL user using this SQL statement ran on cpanel>phpmyadmin>SQL
GRANT ALL PRIVILEGES ON somedb.* TO 'someusr'#'localhost' IDENTIFIED BY 'password' WITH GRANT OPTION;
but it's giving user denied error:
#1044 - Access denied for user 'someusr'#'localhost' to database 'somedb'
We are trying to Integrate our website "www.somewebsite.com" MySQL database with Peachtree accounting software using Dell Boomi AtomSphere.
As per Dell Boomi forums. They replied in the link.
https://community.boomi.com/message/8983
There is no global privileges option on the phpMyAdmin page. There is only data and structure privileges in Cpanel>MySQL Database but no Administration privileges as shown in this video # 8:27 sec;
https://youtu.be/64nYbTkcRZ4?t=507
I tried using SHOW GRANTS FOR 'someusr'#'localhost';
It's showing:
Grants for someusr#localhost
GRANT USAGE ON . TO 'someusr'#'localhost'
IS GRANTABLE = NO
What should I do?
Actually there are two steps to solve this problem if you are using Cpanel.
First step is to go to Remote MySQL and add your IP address of your network.You can check your IP by going to whatismyipaddress.com or add % percent sign so that anyone can access it but this is not recommended because of security issues.
Secondly go to the MySQL Database and grant all user privileges like select, update, delete etc. Now you cannot get any user denied error using dell boomi.
This should work (assuming the database is already there):
CREATE USER 'someusr'#'localhost' IDENTIFIED BY 'password';
GRANT ALL PRIVILEGES ON somedb.* TO 'someusr'#'localhost';
FLUSH PRIVILEGES;
A bit late to the party ( again) but here is another simple solution that wworked for me in the same case :
Open the *.sql file in a text editor and change all instances of old_db_name' tonew_cpanel_db_name'. and try to import again.
Most likely there will be only few occurences at the top of the file, something like :
`
--
-- Database: `old_db_name`
--
CREATE DATABASE IF NOT EXISTS `old_db_name` DEFAULT CHARACTER SET latin1 COLLATE latin1_swedish_ci;
USE `old_db_name`;
`
worked for me severaal times..

Not able to create database on server

I have tried to create database on server by CREATE DATABASE cpi_mock but getting an error like #1044 - Access denied for user 'cpibetap'#'localhost' to database 'cpi_mock'. Then I try to execute SHOW GRANTS It gives me something like
Grants for cpibetap#localhost
GRANT USAGE ON *.* TO 'cpibetap'#'localhost' IDENTIFIED BY PASSWORD '<password>'
GRANT ALL PRIVILEGES ON `cpibetap\_%`.* TO 'cpibetap'#'localhost'
Can anyone tell me what is meaning of above lines? How can I create database on my server?
If the user only have USAGE privilege it does not have access to create the database.
You write "It gives me something like", can you paste the actual response?
The Grant all statements is for the user cpibetap_%, the _ requires a character and the username is only cpibetap thus not having any extra character.

Mysql "access denied for user" error?

I have just added a new database and imported alot of backed up data to it because of a malfunction in the previous database.
I use php and have my own Ubuntu server.
I use phpmyadmin, and have set all privileges to the user.
I am positive the password, username and host are correct.
But I still get this "Access denied for user 'user'#'localhost' to database 'skuffen2'"
What should I do?
Do I need to set permissions somehow on the server?
Please guide me I am in deep need of help right now...
Thanks
login to mysql using root user, use mysql; select * from db where user where user_name=xxx; and check other table as well, most of the privileges settings are there, or just simply flush privileges;