Привет! В этом туториале рассмотрим несколько популярных сценариев.
— Копирование источника данных внутри одного проекта.
— Общий источник данных для разных проектов внутри одной IDE.
— Копирование источника данных в другую IDE, на другой компьютер, в другую галактику.
Тут всё просто: в контекстном меню есть пункт Duplicate. Сочетание клавиш: Ctrl/Cmd+D.
![image](https://habrastorage.org/getpro/habr/post_images/8bd/5ed/fde/8bd5edfdeeb6907888a72614e915b0b4.png)
Пароль придётся ввести заново.
Источник данных можно сделать глобальным, такой источник данных «виден» из любого проекта, с которым вы работаете в этой IDE. Глобальные источники данных не видны из другой версии той же самой IDE.
![image](https://habrastorage.org/getpro/habr/post_images/1d2/666/213/1d2666213056a9b3b8e29d2974cb3e2e.png)
Конечно, источник данных можно сделать обратно локальным.
![image](https://habrastorage.org/getpro/habr/post_images/7b3/279/839/7b3279839f21783b31894d7aad00c604.png)
Если источник данных глобальный, его можно перенести экспортом настроек. Но переносить все настройки хочется не всегда, а источники данных — глобальные тоже не всегда :)
Так что полезным будет знать о том, что источник данных можно копировать: в контекстном меню выберите Database tools > Copy data source to clipboard. Это сработает и с несколькими сразу.
![image](https://habrastorage.org/getpro/habr/post_images/f42/780/57d/f4278057d669b6e96920bf75b7ddacea.png)
В буфер обмена попадает вот такой XML:
![image](https://habrastorage.org/getpro/habr/post_images/d8f/a81/f09/d8fa81f092f9eb9e8695bb68b11711f3.png)
Теперь нажмите + на панели инструментов и выберите Import from clipboard. Из XML в буфере обмена получится такой же источник данных, но без пароля. XML из буфера обмена можно пересылать коллегам в мессенджерах или по почте.
![image](https://habrastorage.org/getpro/habr/post_images/d80/8a6/27d/d808a627d9e3e170e1b4ef91488dde87.png)
Пароли хранятся в KeePass, если вы на Windows и в нативных хранилищах на Linux and MacOS. Включить KeePass для любой операционной системы можно в Settings/Preferences > Appearance and behaviour > System settings > Passwords.
![image](https://habrastorage.org/getpro/habr/post_images/36d/e6a/db8/36de6adb8694c9a3eb109d943222a50a.png)
Если почему-то описанное не решает ваши задачи, пойдём глубже.
Как и в других наших IDE, в DataGrip вы работаете в контексте проекта. Проект — не самая очевидная сущность при работе с SQL, поэтому по умолчанию в DataGrip вы работаете в проекте default и, вероятно, вообще не знаете ничего про проекты, если не создавали их намеренно.
Вот где лежит этот проект:
Windows
Linux
~ is an alias for the home directory, for example, /home/john.
MacOS
В IntelliJ IDEA, PyCharm и других IDE локальные источники данных также прикреплены к проекту. Информация о них хранится в файле
Тут уж делайте что хотите: копируйте файл целиком, вносите изменения прямо в него или положите его под VCS.
Если источник данных глобальный, его в этом файле не будет. XML с глобальными источниками данных ищите в папке options на том же уровне, что и папка projects.
Надеемся, было полезно!
Команда DataGrip.
— Копирование источника данных внутри одного проекта.
— Общий источник данных для разных проектов внутри одной IDE.
— Копирование источника данных в другую IDE, на другой компьютер, в другую галактику.
Копирование источника данных внутри одного проекта
Тут всё просто: в контекстном меню есть пункт Duplicate. Сочетание клавиш: Ctrl/Cmd+D.
![image](https://habrastorage.org/getpro/habr/post_images/8bd/5ed/fde/8bd5edfdeeb6907888a72614e915b0b4.png)
Пароль придётся ввести заново.
Общий источник данных для разных проектов внутри одной IDE
Источник данных можно сделать глобальным, такой источник данных «виден» из любого проекта, с которым вы работаете в этой IDE. Глобальные источники данных не видны из другой версии той же самой IDE.
![image](https://habrastorage.org/getpro/habr/post_images/1d2/666/213/1d2666213056a9b3b8e29d2974cb3e2e.png)
Конечно, источник данных можно сделать обратно локальным.
![image](https://habrastorage.org/getpro/habr/post_images/7b3/279/839/7b3279839f21783b31894d7aad00c604.png)
Копирование источника данных в другую IDE, на другой компьютер.
Если источник данных глобальный, его можно перенести экспортом настроек. Но переносить все настройки хочется не всегда, а источники данных — глобальные тоже не всегда :)
Так что полезным будет знать о том, что источник данных можно копировать: в контекстном меню выберите Database tools > Copy data source to clipboard. Это сработает и с несколькими сразу.
![image](https://habrastorage.org/getpro/habr/post_images/f42/780/57d/f4278057d669b6e96920bf75b7ddacea.png)
В буфер обмена попадает вот такой XML:
![image](https://habrastorage.org/getpro/habr/post_images/d8f/a81/f09/d8fa81f092f9eb9e8695bb68b11711f3.png)
Теперь нажмите + на панели инструментов и выберите Import from clipboard. Из XML в буфере обмена получится такой же источник данных, но без пароля. XML из буфера обмена можно пересылать коллегам в мессенджерах или по почте.
![image](https://habrastorage.org/getpro/habr/post_images/d80/8a6/27d/d808a627d9e3e170e1b4ef91488dde87.png)
Пароли хранятся в KeePass, если вы на Windows и в нативных хранилищах на Linux and MacOS. Включить KeePass для любой операционной системы можно в Settings/Preferences > Appearance and behaviour > System settings > Passwords.
![image](https://habrastorage.org/getpro/habr/post_images/36d/e6a/db8/36de6adb8694c9a3eb109d943222a50a.png)
Если почему-то описанное не решает ваши задачи, пойдём глубже.
Как и в других наших IDE, в DataGrip вы работаете в контексте проекта. Проект — не самая очевидная сущность при работе с SQL, поэтому по умолчанию в DataGrip вы работаете в проекте default и, вероятно, вообще не знаете ничего про проекты, если не создавали их намеренно.
Вот где лежит этот проект:
Windows
<SYSTEM DRIVE>\Users\<USER ACCOUNT NAME>\.<PRODUCT><VERSION>\config\projects\default
Linux
~/.config/projects/default
~ is an alias for the home directory, for example, /home/john.
MacOS
~/Library/Preferences/projects
В IntelliJ IDEA, PyCharm и других IDE локальные источники данных также прикреплены к проекту. Информация о них хранится в файле
<PROJECT><NAME>\.idea\dataSources.xml
Тут уж делайте что хотите: копируйте файл целиком, вносите изменения прямо в него или положите его под VCS.
Если источник данных глобальный, его в этом файле не будет. XML с глобальными источниками данных ищите в папке options на том же уровне, что и папка projects.
Надеемся, было полезно!
Команда DataGrip.
Комментарии (10)
werklop
23.05.2018 19:47Извините за оффтоп, но почините наконец уже обновление между минорными версиями хотя бы. Жму кнопку «Update and Restart», а ничего не происходит. По ссылкам на таски переход также не срабатывает
moscas Автор
24.05.2018 11:28Мы про это не в курсе. Вы заводили тикет?
werklop
24.05.2018 11:31нет, но на основании моего комментария как раз можете и завести
moscas Автор
24.05.2018 11:36Просто вы написали «наконец», как будто это известная проблема. А она оказалась неизвестной, и, вероятно, специфичной для вашего окружения. Я не сторонник просить людей заводить тикеты, но информации пока слишком мало. Так что прошу вас завести. Ну или кинуть сюда ось, версию ИДЕ, скриншоты (скринкасты) и логи. Спасибо!
Caravus
Есть ли возможность подключить источник из одной IDE в другую? Например базы у меня в DataGrip, а код в PhpStorm.
moscas Автор
Прямо «подключить» нет. Скопируйте его, как описано в посте.
Caravus
Копирование не избавляет от необходимости синхронизации с СУБД… то есть мне не только копировать надо, но и поддерживать актуальность структуры на стороне PhpStorm… А если у меня например ещё код в GoLand использует базу — уже в трёх местах…
moscas Автор
Да, вы правы. Мы подумаем, как это сделать.