Следующий код - c #, но его не сложно перевести на vb.net.
string BinToHex(string value)
{
var res = new char[(int)(value.Length / 4)];
int j = res.Length-1;
for (int i = value.Length - 1; i > 0; i -= 4)
{
int x = ((int)value[i]-48)
+((int)value[i-1]-48)*2
+((int)value[i-2]-48)*4
+((int)value[i-3]-48)*8;
res[j--] = x.ToString("X")[0];
}
return new string(res);
}
Остерегайтесь: он не будет обрабатывать ввод, который не имеет правильного количества битов (кратных 4). В любом случае, идея заключается в том, что вы можете переводить между основанием 2 и основанием 16 без использования основания 10. Вы можете даже шагать слева направо.
Из документации :
Реже это может случиться, когда клиент пытается начальное подключение к серверу. В этом случае, если для вашего значения
connect_timeout
задано всего несколько секунд, вы сможете решить проблему, увеличив ее до десяти секунд, возможно, еще больше, если у вас очень большое расстояние или медленное соединение. Вы можете определить, испытываете ли вы эту более необычную причину, используяSHOW STATUS LIKE 'aborted_connections'
. Он будет увеличиваться на единицу для каждой начальной попытки подключения, которую сервер прерывает. Вы можете увидеть«пакет авторизации чтения»
как часть сообщения об ошибке; если это так, это также говорит о том, что вам нужно именно это решение.
Попробуйте увеличить connect_timeout
в вашем файле my.cnf
Проверьте свой файл my.cnf. установите адрес привязки на фактический IP-адрес сервера.
Взгляните на свой файл журнала mysqld - высока вероятность того, что "show status" по какой-то причине приведет к сбою MySQL.