Thursday, May 24, 2018

phpmyAdmin and MySQL Server

This happened to me, when I installed mysql-server then install phpmyadmin, I face this problem when accessing the address localhost/phpmyadmin: "mysqli_real_connect(): (HY000/1698): Access denied for user 'root'@'localhost'" and "#1698 - Access denied for user 'root'@'localhost'"

this happened because the new configuration of mysql-server and phpmyadmin, for security reason, do not allow root user to access remotely by default.

try this steps:

  1. configure the mysql-server, add a new user "pma" (phpMyAdmin) or "pmauser"
    1. login to your mysql console using terminal:
      mysql -u root -p
    2. insert your root password
    3. execute this commmand, change the 'yourpassword' to preferred one:
      Create user 'pmauser'@'%' identified by 'yourpassword';
    4. make sure that your new user had been created:
      select host, user, authentication_string from mysql.user;
    5. grant privilege to your new user, be aware that this command grants pmauser as superuser as root have: GRANT ALL PRIVILEGES ON *.* TO 'pmauser'@'%';


  2. configure the phpmyadmin config to use the created user
    1. go to /etc/phpmyadmin
      1. cd /etc/phpmyadmin
    2. edit the config-db.php file
      1. sudo gedit config-db.php
      2. edit the user (pma/pmauser) and password as we created before
      3. save the file


  3. refresh the page and login





Thursday, May 17, 2018

Totally uninstall and remove configuration MySQL Server Ubuntu 18.04

When you uninstall MySQL for any purpose and reinstall the MySQL Server, perhaps you want to fresh install for all the configuration, but you found that the configuration still remains.

Try this lists accordingly:

sudo service mysql stop  #or mysqld
sudo killall -9 mysql
sudo killall -9 mysqld
sudo apt-get remove --purge mysql-server mysql-client mysql-common

sudo deluser -f mysql
sudo rm -rf /var/lib/mysql
sudo apt-get purge mysql-server-core-5.7
sudo apt-get purge mysql-client-core-5.7
sudo rm -rf /var/log/mysql
sudo rm -rf /etc/mysql

sudo apt-get autoremove
sudo apt-get autoclean

Install MySQL Server on Ubuntu 18.04



In case we need to install mysql server on ubuntu (18.04 LTS used as case), follow the instruction
  1. Install MySQL Server
    • sudo apt-get update
    • sudo apt-get install mysql-server

    1. Allow the remote access
      • sudo ufw allow mysql

      1. Start MySQL Server
        • sudo systemctl start mysql

        1. Set MySQL to launch at reboot
          • sudo systemctl enable mysql

          1. Set MySQL password
            • sudo /usr/bin/mysql -u root -p
            • mysql> use mysql;
            • mysql> UPDATE user SET authentication_string=PASSWORD('yourpassword') WHERE User='root';
            • mysql> FLUSH PRIVILEGES;