Mysql ubuntu

Картинки по запросу mysql

Установка

  • sudo apt update
  • sudo apt install mysql-server
  • sudo mysql_secure_installation

Смена паролей


sudo mysql

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'newpass';

Запуск и логин

sudo mysql -u root -p

Выход

exit mysql console with Ctrl + D or by typing exit
Создание БД и настройка для Django:
CREATE DATABASE mysite DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;
CREATE USER 'django'@'localhost' IDENTIFIED BY 'you_pass';
use mysite;
GRANT ALL PRIVILEGES ON mysite TO 'django'@'localhost';
FLUSH PRIVILEGES;





Выбор ОС для Lenovo ThinkPad L520


Преамбула

Волею судеб в моём распоряжении оказался ноутбук довольно брутального вида от Lenovo.
Lenovo ThinkPad L520. Выглядит моё чудовище как-то вот так:
То есть плохо. Сначала я подумала, что ему не меньше 15 лет и внутри него филиал музея электроники, однако первое впечатление оказалось ошибочным. Внутри него вполне адекватное под мои задачи железо,
Я с недоверием вертела его так и сяк, придирчиво осматривая и изучая. Обнаружила парочку неизвестных мне портов слева, названия которых мне ни о чём не говорят, ярко красную кнопку посередине клавиатуры, неожиданно оказавшейся альтернативой тачпаду, дисковод, внушительный динамик и несколько специфических кнопок.
Но решающим фактом в вопросе  целесообразности использования данного монстра будет его способность справиться с поставленными мной задачами, а именно:
  • Разработка на языке Python, C++, JavaScript (тут сомнений никаких)
  • Ресурсов хватит на Minecraft (главный вопрос)
  • Скорость работы не спровоцирует желание отпустить ноут в полёт с пятого этажа.

Выбор ОС


Выбора между Windows и Linux не стояло, тут ответ очевиден. Ни одного плюса в пользу Windows. А вот дальше не всё так просто. Я давний пользователь Ubuntu, люблю, ценю и уважаю эту ОС, но жажда приключений давно зовёт меня попробовать что-нибудь новое.
Часто в контексте программирования всплывал

Arch Linux

Однако собирательное мнение с нескольких сайтов гласит, что для его установки нужно иметь в запасе неделю времени, ведро кофе и нервы толщиной с канаты. Зато собрано именно так, как мне надо. Проблема в том, что я пока не знаю, как мне надо, мне бы поставить и работать.

Elementary OS

Следующим претендентом на подопытную ОС стала Elementary, с которй я знакома довольно давно. Она покорила моё сердце ещё году так в '14 и заняла почётное место на моём допотопном четвёртом пентиуме. Впечатлившись  картинками приятного глазу дизайна, я решительно настроилась на  красоту, но подвох пришёл откуда не ждали. Мой ноутбук сказал, что он 32bit. А Elementary OS не оставила мне ни малейшего выбора в вопросе разрядности - только 64bit. Этот вопрос мне ещё предстоит изучить, возможно, я найду способ подружить своё чудовище с красавицей Elementary, но пока я поступила очень просто - задала вопрос гуглу: Linux 32 bit
 Гугл ответил мне - ставь Linux Mint

Linux Mint

И я поставила. И оно красивенькое. По сути та же Ubuntu, но вроде бы что-то новое.

Промежуточный итог

Поиски идеальной ОС продолжаются. Она должна быть легковесной, быстрой, но при этом достаточно красивой. Достаточно простой в установке и достаточно гибкой в настройке. Быть доступной хоть для ребёнка, но при этом иметь в запасе необходимые инструменты для разработки. Пока меня Mint устраивает по всем пунктам кроме одного - всё слишком привычное и знакомое. Очень похоже как на Ubuntu, так и Windows. А хочется какого-то космоса и вау. Это, наверное, больше про красоту, чем про функциональность.Про функциональность можно будет рассуждать поработав на Mint и поняв, чего не хватает и что нравится.





Python - в одну строку или чему меня учит CheckIO.org



1. if  

name = "Katy" if friend else "Ekaterina"


2. for -- Генераторы списков


squares = [x ** 2 for x in range(10)]

Python приёмчики - 5 способов форматирования строк

Картинки по запросу python

5 СПОСОБОВ ФОРМАТИРОВАНИЯ СТРОК

1.Конкатенация. Грубый способ форматирования, в котором мы просто склеиваем несколько строк с помощью операции сложения:
print("Меня зовут " + name + ". Мне " + str(age) + " лет.")

2. %-форматирование. Самый популярный способ, который перешел в Python из языка С. Передавать значения в строку можно через списки и кортежи , а также и с помощью словаря. Во втором случае значения помещаются не по позиции, а в соответствии с именами.
print("Меня зовут %(name)s. Мне %(age)d лет." % {"name": name, "age": age})

3. Template-строки. Этот способ появился в Python 2.4, как замена %-форматированию (PEP 292), но популярным так и не стал. Поддерживает передачу значений по имени и использует $-синтаксис как в PHP.
s = Template('Меня зовут $name. Мне $age лет.')

4. Форматирование с помощью метода format(). Этот способ появился в Python 3 в качестве замены %-форматированию. Он также поддерживает передачу значений по позиции и по имени.
print("Меня зовут {name} Мне {age} лет.".format(age=25, name="Kim")

5. f-строки. Форматирование, которое появилось в Python 3.6 (PEP 498). Этот способ похож на форматирование с помощью метода format(), но гибче, читабельней и быстрей.
print(f"Меня зовут {name} Мне {age} лет.")

Катя может в GIT

Git
Я уже поэкспериментировала с гитом, осталась весьма довольна, надо бы запомнить парочку полезных рецептов.

НОВЫЙ ПРОЕКТ
В GitLab вверху нажимаем вверрху справа плюсик и выбираем "Новый проект". Настраиваем по своему вкусу.

Дальше GitLab сам предлагает рецепты. Например, хотим залить туда файлы. Я это делаю как могу, полагаю, есть более адекватный способ.

1. В папке, в которой в будущем появится папка с файлами проекта пишем
$git init
$git clone *ссылка на project_name*  -- клонируем пустой пока ещё репозиторий
$cd project_name -- переходим в папку проекта

Заливаем вручную (мне так удобней) все файлы

$git add * -- все файлы "выбрать"
$git commit -m "text commit"
$ git push origin master

Если всё прошло без ошибок, то в репозитории на gitlab появятся файлы. Какие у меня были ошибки: --не прописала cd, работала не в той папке --зачем то прописала git init во вложенной папке --Удалила в онлайн версии документ, при попытке запушить получился конфликт
============SSH============
UPD Посмотреть, какие на компе есть SSH ключи:
$ls -al ~/.ssh
# Lists the files in your .ssh directory, if they exist
Открыть публичный SSH ключ (если он есть) $ cat ~/.ssh/id_rsa.pub

Как сделать свой online сервер с установленным RaspberryJuice


Покупка хостинга

1. Регистрируемся на сайте worldhosts или на другом хостинге. Инструкция проверена и работает на данном хостинге.

2. Нажимаем "Заказать сервер" и выбираем настройки:
Тариф: MineCraft
Количество игроков: 10 (можно и болье, но будет стоить дороже. Меньше нельзя.)
Срок аренды: 1 месяц или любой срок на ваш вкус
Остальное можно оставить как есть и нажать заказать

3. Оплатить хостинг любым удобным способом

4. Вновь зайти на сайт и перейти в раздел "Мои сервера"

5. На появившемся сервере Minecraft выбрать "Заказать установку сервера" и дождаться полной загрузки

6. Зайти на сервер, нажать кнопку "Включить" и дожаться включения

Установка FTP клиента

1. Скачиваем и устанавливаем FTP клиент
2. На веб-хостинге сервера заходим в раздел FTP данные и копируем оттуда в Filezill-у данные для входа
3. Наживаем кнопку "Быстрое подключение"
4. Выделяем все файлы в правом окошен посередине и удаляем их
5. Вставляем вместо этих файлов файлы вашего сервера
6. На веб хостинге сервера копируем адрес сервера из  поля "Адрес сервера" и подключаемся к нему в игре


Мои плагины для сервера Minecratf

У меня сейчас сервер spigot 1.13, работает относительно стабильно.

Raspberry Juice -- исполнение Python программ

Доп. настройки в файле config.yml:
Порт (по умолчанию 4711)  меняем, чтобы абы кто не подключился.
location: ABSOLUTE - чтобы система отсчёта координат совпадала с игровой
hitclick: BOTH - чтобы учитывались удары любой рукой

AuthMeвнутрисерверная регистрация пользователей

Доп.настройки:
В файле конфигов меняем язык на 'ru', меняем сообщение welcome.txt
Опционально увеличиваем время для регистрации


WorldEditинструменты для редактирования мира

WorldGuard — манипуляции с регионами

Настроить флаги для заприваченных территорий

CoreProtectрегистрирует изменения блоков и позволяет их отменить

Antimatter Chat Filter -- Антимат

 Essentials — более 100 новых команд, инструменты модерирования и экономика

TreeAssist --- деревья
warps -- варпы
PermissionsEX — управление правами игроков
BorderGuard — ограничить размер мира для пользователей
Multi-world - дополнительные миры



Spigot +RaspberryJuce

1. Скачиваем с оф сайта установочник https://hub.spigotmc.org/jenkins/job/BuildTools/ и кидаем его в папку, в которой будет сервер (MServer)
2. Следуем этой инструкции по установке, а именно:
           -Запускаем GitBash
           -Заходим при помощи команд cd в нужную папку и запускаем установку всего безобразия: java -jar BuildTools.jar           -Ждёёёём.
3.Когда процесс окончен пробуем запустить наш сервер. Он ругается на файл eula, меняем там false на true, запускаем снова

4. Сервер запускается, пробуем подключиться, ругается на нелицензионный акк. Идём менять server properties
           -online-mode=true false
Готово! сервер запускается и коннектится
5. Закидываем в папку plugins .jar файл с плагином RaspberryJuice и перезагружаем сервер.
Заходим в появившуюся папку RaspberryJuice и настраиваем config.yml: Меняем систему отсчёта координат на ABSOLUTE, а так же, опционально, выбираем руку для учёта клика.




Катя и часы. Кто умнее? Floveme k7

Ничему меня не научил прошлый опыт с бесполезными "умными" часиками, вернее браслетиком, и я решила попрыгать по тем же граблям. И, повыбирав, для вида, из однотипных умных девайсов на известном китайском сайте, выбрала самые симпатичные. Ибо все функции у них плюс/минус одинаковые, набора датчиков, способных посадить космический аппарат мне не требовалось. /*Датчик давления? Серьёзно? Ох, что-то кости ломит, наверное, давление в атмосфере высокое. А посмотрю ка я на свои умные часы!.*/
Подождав каких то три месяца я побежала забирать с почты свои часики. Эйфория прошла быстро, зато вспомнилось всё разочарование от первого опыта. Всего три крайне унылых циферблата (это же часы, чёрт побери!), крайне непривлекательное и не функциональное родное приложение для связи со смартфоном, скудный набор функций и отвратительная адаптация на русский язык. Должно быть, мою бдительность усыпила надпись "Система Android". Уж с Андрюшей то я разберусь, подумала я при покупке. Я ещё никогда так не ошибалась.

Привычным жестом вбив название модели в гугл я надеялась получить парочку-другую советов по улучшению девайса. Бамс. НИ-ЧЕ-ГО. Только реклама других магазинов. Я тщетно пыталась найти какую угодно инфу по своим часам, по разному гугля версию прошивки, название модели и фирмы, но успехом поиски не увенчались. Немного поразмыслив, я загуглила процессор и не прогадала. Часики оказались близнецами некоторых других моделей, по которым было гораздо больше инфы. Я узнала кое-какие сервисные коды, которые не дали ровным счётом ничего. Нашла инфу про ковыряние прошивки часов и, возможно, воспользуюсь ею. Но никакой надежды улучшить функционал часов малой кровью не маячило на горизонте. Зато я практически убедилась, что это не андроид, во всех источниках упоминалась некая Nucleus OS, адаптированная под данную модель. Да и ни одного упоминания андроида ни на коробке часов, ни на часах я не видела. Грустно, но не смертельно. Прошивка есть, циферблаты можно попытаться залить.

К счастью, помог случай. У молодого человека валялись дома очень похожие часики. Он дал мне их на опыты и ... о, да, ещё один брат по процессору, только более навороченый. И в его ветке упоминалось приложение, радужно обещавшее сконнектиться с любым умным девайсом на МТК. "О Чудо!" - подумала я и побежала устанавливать. Разумеется, не всё так просто, ошибка плеймаркета 505 вылечилась отправлением в мусорку "родного" приложения часов./*Не без удовольствия*/. А дальше как в сказке. Дополнительные циферблаты (штуки 4), дополнительные приложения (штуки 2) и человеческий английский, а не китайский русский. Пока что это успех. И, да, Боже, храни 4pda.

П.С. Научусь добавлять свои циферблаты или хотя бы установить более симпатичные и будет мне счастье. А так апка от МТК уже умеет синхрониться с гуглофитом и выводить уведомления от вкшечки, так что да, это успех. А, чуть не забыла, настраиваемые уведомления - можно для любого приложения включить/отключить. Ну и бонусом глянуть инфу об устройстве.


Как юзать pip

У тебя уже установлен Python 3.6.0, в комплекте с которым идёт плеймаркет всея питона, утилита pip. Ты можешь этого не помнить ибо шёл 30ый час понедельника, и потому я записываю это сюда. Чтобы ею воспользоваться, не нужно гуглить её через поиск (тут вообще уместно использовать слово "гуглить"О-о?) искать её через поиск винды. Но поиском воспользоваться всё-же можно, если очень хочется. Напиши туда три буквы... так, теперь сотри и напиши вот эти три буквы "cmd". Заходи в консоль и колдуй заклинание:

На Windows:

pip3 install numpy
Заклинание взято отсюда: https://pythonworld.ru/osnovy/pip.html

numpy это пакет, который установили, а не часть заклинания.

Полезности оттуда же:

Что ещё умеет делать pip

Пробежимся по основным командам pip:
pip help - помощь по доступным командам.
pip install package_name - установка пакета(ов).
pip uninstall package_name - удаление пакета(ов).
pip list - список установленных пакетов.
pip show package_name - показывает информацию об установленном пакете.
pip search - поиск пакетов по имени.
pip --proxy user:passwd@proxy.server:port - использование с прокси.
pip install -U - обновление пакета(ов).
pip install --force-reinstall - при обновлении, переустановить пакет, даже если он последней версии.

Готово! Вы восхитительны!


Дайте мне датчиков для роботов, и побооольше, побоольше.

Под новый год заказала себе в подарок комплект из 37 датчиков. Вчера забрала с почты и моему восторгу нет предела. Но осталась одна проблема - я не знаю предназначение большей половины из них. Что ж, будем разбираться:-)

В итоге у меня имеется:
№1. 1 x XY-axis joystick module File:Arduino KY-023 XY-axis joystick module Sku 121340 3.jpg
Джойстик, другими словами.
https://tkkrlab.nl/wiki/Arduino_KY-023_XY-axis_joystick_module#Example_Code
// Module KY023
// For more info see http://tkkrlab.nl/wiki/Arduino_KY-023_XY-axis_joystick_module
int JoyStick_X = A0; // x
int JoyStick_Y = A1; // y
int JoyStick_Z = 3; // key
void setup ()
{
pinMode (JoyStick_X, INPUT);
pinMode (JoyStick_Y, INPUT);
pinMode (JoyStick_Z, INPUT_PULLUP);
Serial.begin (9600); // 9600 bps
}
void loop ()
{
int x, y, z;
x = analogRead (JoyStick_X);
y = analogRead (JoyStick_Y);
z = digitalRead (JoyStick_Z);
Serial.print (x, DEC);
Serial.print (",");
Serial.print (y, DEC);
Serial.print (",");
Serial.println (z, DEC);
delay (100);
}
№2. .1 x 5V relay module

 1 x Small passive buzzer module 
.1 x 2-color LED module 
.1 x Hit sensor module 
.1 x Vibration switch module 
.1 x Photo resistor module 
.1 x Key switch module 
.1 x Tilt switch module 
.1 x 3-color full-color LED SMD module
.1 x Infrared emission sensor module 
.1 x 3-color LED module 
.1 x Mercury open optical module 
.1 x Yin Yi 2-color LED module 3MM 
.1 x Active buzzer module 
.1 x Temperature sensor module 
.1 x Automatic flashing colorful LED module 
.1 x Mini magnetic reed modules 
.1 x Hall magnetic sensor module 
.1 x Infrared sensor receiver module 
.1 x Class Bihor magnetic sensor 
.1 x Magic light cup module 
.1 x Rotary encoder module 
.1 x Optical broken module 
.1 x Detect the heartbeat module 
.1 x Reed module 
.1 x Obstacle avoidance sensor module 
.1 x Hunt sensor module 
.1 x Microphone sound sensor module 
.1 x Laser sensor module 

.1 x Temperature sensor module 
.1 x Temperature sensor module 
.1 x Linear magnetic Hall sensors 
.1 x Flame sensor module 
.1 x Sensitive microphone sensor module 
.1 x Temperature and humidity sensor module 
.1 x XY-axis joystick module 
.1 x Metal touch sensor module