ОШИБКА 2003 (HY000): не удается подключиться к серверу MySQL на локальном хосте (10061)

Это не точное решение вашей проблемы с получением данных из firebase в обратном порядке, но в любом случае у нас есть другие проблемы.

Первая работа вокруг упоминается в комментарии использования пользовательского адаптера для вашего списка.

Чтобы добиться такого поведения, вам нужно получить данные о базе данных в списке, а затем вы должны перевернуть его самостоятельно, прежде чем передавать его на адаптер. Просто!

Вторая работа легко, как пирог, и я думаю, что если вы используете RecyclerView, это может сделать трюк для вас, и я считаю это самым простым способом выполнить эту работу.

Вот, я изменяю часть моего кода с помощью RecyclerView

// Declare the RecyclerView and the LinearLayoutManager first
private RecyclerView listView;
private LinearLayoutManager mLayoutManager;

...

@Override
public void onViewCreated(View view, Bundle savedInstanceState){

    // Use FirebaseRecyclerAdapter here

    // Here you modify your LinearLayoutManager
    mLayoutManager = new LinearLayoutManager(MainActivity.this);
    mLayoutManager.setReverseLayout(true);
    mLayoutManager.setStackFromEnd(true);

    // Now set the layout manager and the adapter to the RecyclerView
    listView.setLayoutManager(mLayoutManager);
    listView.setAdapter(adapter);
}

Установив mLayoutManager.setReverseLayout(true); - вы 're reverse the your layout и mLayoutManager.setStackFromEnd(true); позиционирует представление в верхней части вашего списка.

Миграция на RecyclerView проста. Ваш макет будет что-то вроде этого




    

И в вашем build.gradle

dependencies {
    compile 'com.android.support:recyclerview-v7:23.4.0'
}

Вам нужно, чтобы FirebaseRecyclerAdapter можно было найти здесь, в FirebaseUI .

Примечание. Не используйте RecyclerView.LayoutManager, поскольку функции setReverseLayout и setStackFromEnd не будут найдены в RecyclerView.LayoutManager. Используйте LinearLayoutManager, как указано.

Обновить

Вот как вы можете обрабатывать события кликов ваших элементов в списке.

Вам нужно было объявить ViewHolder для реализации права RecyclerView? Просто добавьте еще одну функцию в свой класс ViewHolder, как показано ниже, и вызовите эту функцию после функций setText, которые у вас там есть.

public static class MyViewHolder extends RecyclerView.ViewHolder {
    View mView;

    public MyViewHolder(View itemView) {
        super(itemView);
        mView = itemView;
    }

    public void setClickEvent() {
        // Set the onClickListener on mView
        // mView.setOnClickListener(new OnClickListener)...
    }
}

25
задан HamZa 2 July 2013 в 12:50
поделиться

10 ответов

Существует вероятность того, что ваша установка MYSQL была повреждена. Лучшее, что вы можете сделать, это найти MYSQL INSTALLER в вашей системе и затем запустить его снова.

Он не будет загружать сервер MySQL снова, он просто поможет вам настроить его.

После этого отредактируйте путь environment variables и добавьте в него папку bin вашего mysql.

К настоящему времени это должно работать.

0
ответ дан Akintunde 2 July 2013 в 12:50
поделиться

Я сталкивался с одной и той же проблемой пару раз, и каждый раз причина была разной:

  • Решение, которое сработало в первый раз, заключалось в том, что «Abhishek Oza», то же самое, что и «amey91» (см. выше)
  • Во второй раз мой сервер имел номер порта, отличный от номера по умолчанию (3036), поэтому я не смог подключиться. Поэтому мне пришлось явно указать номер порта для создания соединение, которое вы можете сделать, просто написав: " mysql --host = 127.0.0.1 --port = 8081 (укажите здесь номер вашего порта) mysql -u root -p "
0
ответ дан Kumar Mohit 2 July 2013 в 12:50
поделиться

Возникла эта проблема в Windows 10 и MySQL 8. Решена с помощью следующих шагов: Панель поиска (внизу слева)> Диспетчер задач> Запуск от имени администратора> Службы> MySQL80

1
ответ дан Samvit Mishra 2 July 2013 в 12:50
поделиться

Перейти к типу бега services.msc. Проверьте, запущены ли службы MySQL или нет. Если нет, запустите его вручную.

0
ответ дан bokino12 2 July 2013 в 12:50
поделиться

Эй, это не большая проблема, что вам нужно сделать, это .....

1. Run your cmd as administrator.

2.What you will see is like this
c:\windows\system32>

3.Go to your bin location by using cd..
like C:\mysql\bin(my location of bin in my computer is what you are seeing so chose yours correctly)

4.C:\mysql\bin>mysql --install
  Service successfully installed.

5.C:\mysql\bin>NET START MySql
 The MySql service is starting
 The MySql service was started successfully

Тогда последним шагом будет

6.C:\mysql\bin>mysql -u root - p admin
It will ask for password don't enter anything first time because it will use blank, n just press enter you are done.

N позже, вы также можете установить пароль ...:)

2
ответ дан Ashish Kumar 2 July 2013 в 12:50
поделиться

У меня машина с Windows 8.1, и mysql вообще не работал даже после попытки запустить mysqld без журналов ошибок. Это решение сработало для меня:

  1. start cmd в режиме администратора
  2. введите «net start mysql»
  3. , чтобы закрыть текущее окно cmd и открыть новое окно cmd
  4. введите «mysql»

Служба mysqld теперь должна быть доступна.

3
ответ дан amey91 2 July 2013 в 12:50
поделиться

Я также сталкиваюсь с той же проблемой. попробуйте

  1. Перейдите в каталог bin, скопируйте путь и установите его в качестве переменной окружения.
  2. Запустите командную строку от имени администратора и перейдите в каталог bin:
  3. Запустите команду: mysqld –install
  4. Теперь службы успешно установлены
  5. Запустите службу в службе Windows OS
  6. Введите MySQL и идти
8
ответ дан kavi temre 2 July 2013 в 12:50
поделиться

Если вы используете zip-архив без установки, вам нужно сначала выполнить mysqld.exe, чтобы запустить службу, а затем выполнить mysql.exe, чтобы открыть ваше соединение.

Нет необходимости в установке, но если вы намерены выполнить какую-либо серьезную работу с MySQL, вы можете рассмотреть возможность использования MSI для правильной установки или если вы занимаетесь веб-разработкой, дайте XAMPP попытка

1
ответ дан Robert H 2 July 2013 в 12:50
поделиться

Убедитесь, что файл Mysqld.exe находится в папке bin. если его там нет, просто скопируйте этот файл с любого другого компьютера и вставьте его в папку bin. Просто дважды щелкните. Затем запустите mysql.its решено

1
ответ дан Sujith.S 2 July 2013 в 12:50
поделиться

Я перепробовал все вышеупомянутые варианты, но не могу найти решение этой проблемы. Тогда я получил его решение .... Эта ошибка высвечивается, когда мы пытаемся открыть mysql без указания службы. Следуйте приведенным ниже шагам.
ШАГ 1
Открыть приглашение cmd
для запуска типа службы
mysqld --console это запустит службу mysql
введите описание изображения здесь
ШАГ 2 не закрывайте эту команду cmd
, теперь откройте новый Приглашение cmd и введите
mysql -u root -p
, затем введите свой пароль
введите здесь описание изображения

1
ответ дан Nandkishor Nangre 2 July 2013 в 12:50
поделиться
Другие вопросы по тегам:

Похожие вопросы: