Для использования MySQL из веб-приложения на Go необходимо установить драйвер для базы данных. Он действует как посредник, переводя команды между Go и самой базой данных MySQL.

Содержание статьи

Найти полный список доступных драйверов можно на гитхабе. Для нашего приложения мы будем использовать популярный драйвер go-sql-driver/mysql.

Премиум 👑 канал по Golang

Рекомендуем вам супер TELEGRAM канал по Golang где собраны все материалы для качественного изучения языка. Удивите всех своими знаниями на собеседовании! 😎

Подписаться на канал

Уроки, статьи и Видео

Мы публикуем в паблике ВК и Telegram качественные обучающие материалы для быстрого изучения Go. Подпишитесь на нас в ВК и в Telegram. Поддержите сообщество Go программистов.

Go в ВК ЧАТ в Telegram


Для загрузки драйвера перейдите в папку проекта и выполните команду go get следующим образом:

Обратите внимание, что в пути пакета мы добавляем в конце @v1. Это говорит о том, что мы хотим скачать последнюю доступную версию пакета начиная с 1.X.X.

На момент написания статьи последней версией является v1.5.0, но у вас загружаемая версия может быть v1.5.1, v1.6.0 в зависимости от новых реализов на сайте автора. Поскольку пакет go-sql-driver/mysql использует семантическое управление версиями для своих реализов, любая версия v1.x.x должна быть совместима с другими версиями пакета из данной ветки v1.

Если вы хотите установить последнюю версию, независимо от ее номера, можно просто опустить суффикс @version. К примеру:

Если вы хотите скачать определенную версию пакета, можно записать весь номер версии. К примеру:

После установки драйвера взгляните на файл go.mod (которого мы создали в самом начале данного курса по созданию сайта на golang). Вы должны увидеть новую строку require, содержащую путь к пакету и точную версию, которая была загружена:

Вы также увидите, что в папке проекта появился новый файл под названием go.sum.

go.sum в Golang

Файл go.sum содержит криптографические контрольные суммы, представляющие содержимое необходимых пакетов. Если вы откроете его, вы увидите что-то вроде следующего:

В отличие от файла go.mod, файл go.sum не предназначен для редактирования человеком, и обычно вам не стоит его открывать или тем более редактировать. Этот файл решает две полезные задачи:

  • Если вы запустите команду go mod verify из терминала, Go проверит, если контрольные суммы загруженных пакетов на компьютере соответствуют записям в go.sum, так вы можете быть уверены, что они не были изменены;
  • Если кому-то еще нужно загрузить все зависимости для проекта, запустив команду go mod download — он получит сообщение об ошибке, если будет какое-либо несоответствие между загружаемыми зависимостями и контрольными суммами в файле.

Обновление пакетов в Go

После того, как пакет был загружен и добавлен в файл go.mod, название пакета и его версия «замораживаются» и самостоятельно они себя не будут обновлять. В будущем, вам все же понадобится знать как правильно обновить пакет в golang.

Чтобы обновить пакет до последней доступной версии или исправления, вы можете просто запустить команду go get с флагом -u следующим образом:

Или же, если вы хотите перейти на определенную версию, вам следует выполнить ту же команду, но с суффиксом @version. Например:

Удаление пакетов в Go

Иногда, в процессе сборки приложения, вы можете понять, что какой либо ранее установленный пакет больше не нужен. Возникает вопрос, как правильно удалить пакет из Golang?

Вы можете запустить команду go get и указать путь к пакету с добавлением @none в конце. К примеру:

Или, если вы удалили все упоминания о пакете в своем коде, вы можете запустить команду go mod tidy, которая автоматически удалит все неиспользуемые пакеты из файлов go.mod и go.sum.

5 1 голос
Рейтинг статьи
Подписаться
Уведомить о
guest
0 комментариев
Межтекстовые Отзывы
Посмотреть все комментарии