Add these lines to the file /etc/phpmyadmin/config.inc.php [ubuntu]
$cfg[‘Servers’][$i][‘controluser’] = ‘root’;
$cfg[‘Servers’][$i][‘controlpass’] = ”;
Add these lines to the file /etc/phpmyadmin/config.inc.php [ubuntu]
$cfg[‘Servers’][$i][‘controluser’] = ‘root’;
$cfg[‘Servers’][$i][‘controlpass’] = ”;
Run the following
$ sudo mysql
ALTER USER ‘root’@’localhost’ IDENTIFIED WITH mysql_native_password by ‘mynewpassword’;
LOAD DATA LOCAL INFILE '/root/Desktop/tablename.csv' INTO TABLE TABLE-NAME ;
Open the file \vendor\magento\framework\Serialize\Serializer\json.php and replace the function unserialize() with the below
public function unserialize($string) {
/* Added the following if clause to resolve the issue */
if($this->is_serialized($string)){
$string = $this->serialize($string);
}
$result = json_decode($string, true);
if (json_last_error() !== JSON_ERROR_NONE) {
throw new \InvalidArgumentException('Unable to unserialize value.');
}
return $result;
}
Also add the following function as well
function is_serialized($value, &$result = null) {
// Bit of a give away this one
if (!is_string($value))
{
return false;
}
// Serialized false, return true. unserialize() returns false on an
// invalid string or it could return false if the string is serialized
// false, eliminate that possibility.
if ($value === 'b:0;')
{
$result = false;
return true;
}
$length = strlen($value);
$end = '';
switch ($value[0])
{
case 's':
if ($value[$length - 2] !== '"')
{
return false;
}
case 'b':
case 'i':
case 'd':
// This looks odd but it is quicker than isset()ing
$end .= ';';
case 'a':
case 'O':
$end .= '}';
if ($value[1] !== ':')
{
return false;
}
switch ($value[2])
{
case 0:
case 1:
case 2:
case 3:
case 4:
case 5:
case 6:
case 7:
case 8:
case 9:
break;
default:
return false;
}
case 'N':
$end .= ';';
if ($value[$length - 1] !== $end[0])
{
return false;
}
break;
default:
return false;
}
if (($result = @unserialize($value)) === false)
{
$result = null;
return false;
}
return true;
}
open the file
vendor/magento/module-authorization/Model/Acl/AclRetriever.php and replaced the below code
if (!$role) {
throw new AuthorizationException(
__('We can\'t find the role for the user you wanted.')
);
}
$allowedResources = $this->getAllowedResourcesByRole($role->getId());
with
if (!$role) {
$allowedResources = array();
}
and revert it on sucess.
You can controll this option at run time.
If you prefer to output to a table:
Execute SET GLOBAL log_output = 'TABLE';
Execute SET GLOBAL general_log = 'ON';
Take a look at the table mysql.general_log
If you prefer to output to a file instead of a table:
SET GLOBAL log_output = "FILE"; the default.
SET GLOBAL general_log_file = "/path/to/your/logfile.log";
SET GLOBAL general_log = 'ON';
1) Set network buffer length to a large byte number. The default value may throw errors for such large data files
set global net_buffer_length=1000000;
2) Set maximum allowed packet size to a large byte number.The default value may throw errors for such large data files.
set global max_allowed_packet=1000000000;
3) Disable foreign key checking to avoid delays,errors and unwanted behaviour
SET AUTOCOMMIT = 0;
SET UNIQUE_CHECKS = 0;
SET foreign_key_checks = 0;
4) Import your sql dump file
source FILEPATH/FILE_NAME
5) Enable foreign key checks when import is done.
SET AUTOCOMMIT = 1;
SET UNIQUE_CHECKS = 1;
SET foreign_key_checks = 1;
innodb_buffer_pool_size = 1G
innodb_log_buffer_size = 1G
innodb_write_io_threads = 16
innodb_flush_log_at_trx_commit = 0
innodb_log_file_size = 1G
Just set is_used_in_grid as false.
Login to MySQL using the current use details and run the following command.
UPDATE mysql.user SET Password=PASSWORD('Root@123') WHERE User='root'; FLUSH PRIVILEGES;
Run the following command
gunzip < [backupfile.sql.gz] | mysql -u[username] -p[password] [database]