|
v7: sql база 7.7 + онлайн прайс из той-же базы | ☑ | ||
---|---|---|---|---|
0
monsterZE
05.04.12
✎
15:09
|
тема интеграции базы с сайтом (магазин там, заявки и прочая хрень)..
вот в чем вопрос - сечас реализован сабж на php, так вот.. для php заведен отдельный пользователь ридонли, который просто делает выборки. смотрю по монитору sql, а сессии от php висят еще некоторое время. ессно, пока висят сессии монопольно в базу зайти никто не может. а это напрягает, т.к. не дает делать выгрузки / открывать период.. чел говорит, что сессию исправно закрывает. есть вобще какие-то тонкости по подобным реализациям? что почитать? =) |
|||
1
пипец
05.04.12
✎
15:13
|
поставь УРБД и забирай с ПБ
|
|||
2
monsterZE
05.04.12
✎
15:15
|
(1) дублирование баз пока не вариант, если ты об этом
|
|||
3
dk
05.04.12
✎
15:22
|
ну напиши батник чтобы килял этого юзера
вот ведь не вломы было из PHP прямой запрос к скулю писать |
|||
4
monsterZE
05.04.12
✎
16:27
|
а есть что-то более нежно чем drop user? =)
|
|||
5
monsterZE
05.04.12
✎
16:27
|
*нежноЕ
|
|||
6
Ёпрст
05.04.12
✎
16:38
|
(4) есть "ПНХ, Альфредо!" , вот только не знаю, реализовали ли это в SQL
|
|||
7
пипец
05.04.12
✎
16:44
|
пользователь ходит локально ? или ?
ЗЫ если сессия в терминале то логофф например как вариант или сделай вьюшку или сторед процедуру - пусть берет данные из нее |
|||
8
Ёпрст
05.04.12
✎
16:45
|
логофф как то не комильфо - еще про в самом скуле останется болтаться.. проще в самом скуле кикнуть
|
|||
9
Злой Бобр
05.04.12
✎
16:50
|
(0) Все от того что мало кому придет в голову торговать с сайта наличием в базе. В базе делают обычно переброс на склад сайта и выгрузку на сайт остатков этого склада. Заказы с сайта подгружают по мере необходимости.
Ну а вы молодцы. А когда у вас на сайте будет тусоваться не 5 человек а 105 - что делать будете?.. В общем проблема в реализации задачи а не в сеансе. |
|||
10
monsterZE
05.04.12
✎
17:10
|
(9) сейчас только самое начало и челов на сайте будет минимум. идея с отдельным складом понятна. но пока, для текущего случая не подходит. пока делается для онлайн заявок.. в чем проблема присутствия 105 человек?
(7) пользователь прицепляется локально |
|||
11
monsterZE
05.04.12
✎
17:14
|
смотрю bol и не догоняю =) в чем отличие для
grant control ON user1 role db_datareader c grant alter ON user1 role db_datareader |
|||
12
monsterZE
05.04.12
✎
17:23
|
факардо =) как вернуть пользователю роль из коммандной строки?
|
|||
13
monsterZE
05.04.12
✎
21:59
|
такое подойдет?
USE mydbname GO ALTER ROLE db_datareader ADD MEMBER mysqluser GO |
|||
14
monsterZE
05.04.12
✎
22:04
|
хоть синтаксис поправьте..
use [base1] exec sp_addrolemember N"db_owner", N"User1" что за N? |
|||
15
monsterZE
06.04.12
✎
12:18
|
верный вариант
use MYbase create user MYuser exec sp_addrolemember "db_datareader","MYuser" go |
|||
16
seakuban
07.04.12
✎
00:19
|
(0) интересный подход. даже не первый взгляд сложно сказать нравится или нет. Но конечно открыть базу sql для доступа из внешнего интернета это смело...И скрипт php подымает обычное соединение а не SSL? Я делаю обычно по другому (наоборот) - 1C шлет php-скрипту запрос на авторизацию, если авторизация успешна то скрипт начинает принимать запросы из 1С (в пределах сессии конечно) на выборку (обновление, вставку) данных. 1С передает данные php скрипту в виде параметра (xml текста). почитать можно тут - http://legion-service.org/article4.html.
--- |
|||
17
seakuban
07.04.12
✎
00:22
|
кстати какой какой интернет магазин используете? судя по тому что ручками пришлось делать интеграцию с 1с - наверное какой нибудь бесплатный Virtualmart или OpenCart? В личку пишите могу помочь с реализацией по моему варианту практически бесплатно. чисто символическую сумму оплатите чтобы хоть сигареты оправдать)
|
|||
18
monsterZE
07.04.12
✎
09:51
|
(16) (17) из внешнего инета база ессно недоступна. пользователь с правами db_datareader. инет-сервер и сервер 1с находятся на разных машинах и к серверу 1с имеется доступ только по портам sql. инет магазина нет. это далекая перспектива. а, если будет, то самописный (некое специфичное подобие). =) близкая перспектива - просто онлайн заявки. почему не отдельным складом - потому что клиенты большинством малообразованные (кто хочет поржать - могу показать РУКОПИСНУЮ заявку на 5 листов А4 отсканированную и присланную) и доля тех, кто будет этим пользоваться, пока меньше 15-20%. т.е. товар рискует зависнуть на этом складе надолго. причем обороты товара огромные, т.е. сейчас есть, через 2 минуты нет. и еще существет дифицит. (т.е. бывает, что его и так не хватает) поэтому делить еще по складам - как бы не очень.. а так спасибо за предложение. =) по ссылочке почитаю. если что вдруг - в личке договоримся.
|
|||
19
Chai Nic
07.04.12
✎
09:56
|
Вперед к трехзвенке! Напиши на дельфи агента, который через OLE будет православно цепляться к базе 1с и отдавать нужную информацию сайту. А ручками в базу лазить нехорошо.
|
|||
20
monsterZE
07.04.12
✎
10:00
|
(19) не понял, что имеешь ввиду под "ручками"? прямые запросы от php?
|
|||
21
monsterZE
07.04.12
✎
10:08
|
может самый правильный вариант будет с использованием УРБД (как написал (1)), но я хз сколько времени будет занимать синхронизация и сколько ресов оно отожрет и рабочий базы во время нее (блокировок). бо синхронизировать надо ~ раз в 5 минут. а работа в основное по сути не прекращается в теч. дня. ..надо попробывать.
|
|||
22
vde69
07.04.12
✎
10:09
|
я обмены делал через хранимки,
в базе веб сервера делал хранимки (в которых как дополнительный уровень защиты свой одноразово генерируемый пароль, правда не сложный) и к ней цеплялся из 1с и делал все что нужно... |
|||
23
monsterZE
07.04.12
✎
10:13
|
или средствами самого sql создать таблицы дублирующие необходимые данные и апдейтить их самому. =)
(22) "хранимки" - это свои процедуры для sql? бо я не понимаю, что значит "к ней цеплялся из 1с" =)) обращаться не напрямую к таблице, а через свою процедуру? чем это лучше? |
|||
24
monsterZE
07.04.12
✎
10:16
|
вобще мысль со своими табличками мне нравится. =) т.к. можно сделать именно так, как хочется и хранить то, что нужно.
|
|||
25
vde69
07.04.12
✎
10:17
|
(23)
1. права на таблицы не нужно давать 2. транзакцию поднимаешь внутри хп, в случае падения конекта не висит блокировка до таймаута 3. четкое разделение зон ответствености |
|||
26
monsterZE
07.04.12
✎
10:19
|
ресурсов в достатке. имею редкие проблемы с блокировкой журнала документов.
(25) спасибо, а можно что-то типа простого примера? =) |
|||
27
Chai Nic
07.04.12
✎
21:10
|
(20) Именно. Прямые запросы в обход 1с - это не то (против прямых запросов 1с++ ничего не имею)... А написать промежуточного агента не так уж и сложно, я даже как-то пробовал чисто для тренировки сделать сервис, который по http-запросу достает из базы содержимое реквизита справочника по переданному ключу. Самое главное - в этом случае нет никакой привязки к формату базы, всё работает одинаково и в sql и в dbf.
|
|||
28
monsterZE
07.04.12
✎
21:32
|
(27) Спсибо, мысль ясна. Уточню, что ПЗ используются только на чтение! Вобщем буду пробывать варианты.. =)
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |