История одного перехода на SQLEXPRESS
От: akasoft Россия  
Дата: 05.02.06 16:51
Оценка: 44 (8) +1
#Имя: FAQ.janus.sqlexpress
Закончилось
Автор: akasoft
Дата: 04.02.06
у меня недавно счастье. И вроде рядом оно, а совсем вышло всё.

А рубить "нажитое непосильным трудом" жалко. Хотел было удалить "старые" темы да ненужные форумы, но передумал.

Долго ли, коротко ли, а без Януса совсем "жизни" нет , и решился я помучать SQL Express. А поскольку ленивый я очень, то утилиту импорта-экспорта писать мне было влом, и решил я воспользоваться встроенными да имеющимися возможностями.

Само собой, что поставил я тулзы от сервера 2005, и пробовал всё из Microsoft SQL Server Management Studio.

Попробовал экспорт данных из Access в SQL Server, создал источник более часа ждал, образовалась папка с 2Г БД и 4Г лога. Удалил нафиг.

Попробовал импорт данных, как ИТ излагал
Автор: akasoft
Дата: 30.10.05
. Получилось, только что из-за перестроения индексов БД распухла на 42%, что-то до 4Г. Без перестроения индексов жутько тормозила, хуже mdb, что и не удивительно. Но и после построения индексов, и после сжатия всё одно работа была несколько некомфортной. Я, знаете, от SQL Express ожидал большего.

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

И подумал я, что Янус-то должен уметь создавать структуру-пустышку, Ретн не зря старался же. Сказано сделано. Запустил Янус, само собой открыл мне он mdb, я полез в меню Сервис-Настройки пользователя, и изменил там строку подключения: нажал троеточие, перешёл на вкладку MS SQL Server, указал там COMPUTERNAME\SQLEXPRESS, Windows-аутентификацию, нажал Connect, установил соединение, а затем нажал Create. БД появилась, строка подключения сформировалась, и при последующем перезапуске Януса я наконец увидел... ничего не увидел.

Ну, начнём с того, что БД создалась в папке по умолчанию, что меня категорически не устраивало, у меня были свои виды на положение БД. А во-вторых, надо бы перенести данные таки.

Во время экспериментов заметил я любовь Экспресса к оперативной памяти, и решил это пресечь. Выбрал правым щелчком по корневой ветке в SQL SMS сервер, меню Properties, страница Memory и выставил там мксимум и минимум в МБ. После чего перезапустил службу, ну и SMS переподключил. Аппетиты поубавились, хотя этот товарищ всё порывался перейти установленный мною максимум, хотя и ненамного, мегабайт на 20-30.

Сразу скажу, удалял и создавал я БД Януса раз 20 на разные лады, импортировал, экспортировал, всё понять хотел, как оно работает. И понял, что лучше будет создать пустую БД, а затем из SQL SMS выбрать БД Janus, правый щёлк, меню Tasks-Generate Scripts и в формочке мастера ставить True напротив Script Indexes, а затем у меня получился готовый скрипт создания пустой БД. Только путь в нём подправить на нужный. Вот такой он у меня получился:

USE [master]
GO
IF NOT EXISTS (SELECT name FROM sys.databases WHERE name = N'Janus')
BEGIN
CREATE DATABASE [Janus] ON  PRIMARY
( NAME = N'Janus', FILENAME = N'C:\rsdnforums\sql\Janus.mdf' , SIZE = 2240KB , MAXSIZE = UNLIMITED, FILEGROWTH = 1024KB )
 LOG ON
( NAME = N'Janus_log', FILENAME = N'C:\rsdnforums\sql\Janus_log.LDF' , SIZE = 1088KB , MAXSIZE = 2048GB , FILEGROWTH = 10%)
END

GO
EXEC dbo.sp_dbcmptlevel @dbname=N'Janus', @new_cmptlevel=90
GO
ALTER DATABASE [Janus] SET ANSI_NULL_DEFAULT OFF
GO
ALTER DATABASE [Janus] SET ANSI_NULLS OFF
GO
ALTER DATABASE [Janus] SET ANSI_PADDING OFF
GO
ALTER DATABASE [Janus] SET ANSI_WARNINGS OFF
GO
ALTER DATABASE [Janus] SET ARITHABORT OFF
GO
ALTER DATABASE [Janus] SET AUTO_CLOSE ON
GO
ALTER DATABASE [Janus] SET AUTO_CREATE_STATISTICS ON
GO
ALTER DATABASE [Janus] SET AUTO_SHRINK OFF
GO
ALTER DATABASE [Janus] SET AUTO_UPDATE_STATISTICS ON
GO
ALTER DATABASE [Janus] SET CURSOR_CLOSE_ON_COMMIT OFF
GO
ALTER DATABASE [Janus] SET CURSOR_DEFAULT  GLOBAL
GO
ALTER DATABASE [Janus] SET CONCAT_NULL_YIELDS_NULL OFF
GO
ALTER DATABASE [Janus] SET NUMERIC_ROUNDABORT OFF
GO
ALTER DATABASE [Janus] SET QUOTED_IDENTIFIER OFF
GO
ALTER DATABASE [Janus] SET RECURSIVE_TRIGGERS OFF
GO
ALTER DATABASE [Janus] SET  ENABLE_BROKER
GO
ALTER DATABASE [Janus] SET AUTO_UPDATE_STATISTICS_ASYNC OFF
GO
ALTER DATABASE [Janus] SET DATE_CORRELATION_OPTIMIZATION OFF
GO
ALTER DATABASE [Janus] SET TRUSTWORTHY OFF
GO
ALTER DATABASE [Janus] SET ALLOW_SNAPSHOT_ISOLATION OFF
GO
ALTER DATABASE [Janus] SET PARAMETERIZATION SIMPLE
GO
ALTER DATABASE [Janus] SET  READ_WRITE
GO
ALTER DATABASE [Janus] SET RECOVERY SIMPLE
GO
ALTER DATABASE [Janus] SET  MULTI_USER
GO
ALTER DATABASE [Janus] SET PAGE_VERIFY CHECKSUM
GO
ALTER DATABASE [Janus] SET DB_CHAINING OFF
USE [Janus]
GO
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[messages_outbox]') AND type in (N'U'))
BEGIN
CREATE TABLE [dbo].[messages_outbox](
        [dte] [datetime] NOT NULL,
        [gid] [int] NULL,
        [hold] [bit] NOT NULL DEFAULT ((0)),
        [message] [ntext] NULL,
        [mid] [int] IDENTITY(1,1) NOT NULL,
        [reply] [int] NOT NULL,
        [subject] [nvarchar](128) NULL,
        [tagline] [nvarchar](128) NULL,
 CONSTRAINT [PK_messages_outbox] PRIMARY KEY CLUSTERED
(
        [mid] ASC
)WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY]
) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]
END
GO
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[rate_outbox]') AND type in (N'U'))
BEGIN
CREATE TABLE [dbo].[rate_outbox](
        [id] [int] IDENTITY(1,1) NOT NULL,
        [mid] [int] NOT NULL,
        [rate] [int] NOT NULL,
 CONSTRAINT [PK_rate_outbox] PRIMARY KEY CLUSTERED
(
        [id] ASC
)WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY]
) ON [PRIMARY]
END
GO
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[rating]') AND type in (N'U'))
BEGIN
CREATE TABLE [dbo].[rating](
        [dte] [datetime] NOT NULL,
        [id] [int] IDENTITY(1,1) NOT NULL,
        [mid] [int] NOT NULL,
        [rate] [smallint] NOT NULL,
        [rby] [smallint] NOT NULL,
        [tid] [int] NOT NULL,
        [uid] [int] NOT NULL,
 CONSTRAINT [PK_rating] PRIMARY KEY CLUSTERED
(
        [id] ASC
)WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY]
) ON [PRIMARY]
END
GO

IF NOT EXISTS (SELECT * FROM sys.indexes WHERE object_id = OBJECT_ID(N'[dbo].[rating]') AND name = N'IX_rating_mid')
CREATE NONCLUSTERED INDEX [IX_rating_mid] ON [dbo].[rating]
(
        [mid] ASC
)WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY]
GO

IF NOT EXISTS (SELECT * FROM sys.indexes WHERE object_id = OBJECT_ID(N'[dbo].[rating]') AND name = N'IX_rating_mid_rate')
CREATE NONCLUSTERED INDEX [IX_rating_mid_rate] ON [dbo].[rating]
(
        [mid] ASC,
        [rate] ASC
)WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY]
GO

IF NOT EXISTS (SELECT * FROM sys.indexes WHERE object_id = OBJECT_ID(N'[dbo].[rating]') AND name = N'IX_rating_tid')
CREATE NONCLUSTERED INDEX [IX_rating_tid] ON [dbo].[rating]
(
        [tid] ASC
)WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY]
GO

IF NOT EXISTS (SELECT * FROM sys.indexes WHERE object_id = OBJECT_ID(N'[dbo].[rating]') AND name = N'IX_rating_uid')
CREATE NONCLUSTERED INDEX [IX_rating_uid] ON [dbo].[rating]
(
        [uid] ASC
)WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY]
GO
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[server_forums]') AND type in (N'U'))
BEGIN
CREATE TABLE [dbo].[server_forums](
        [descript] [nvarchar](128) NULL,
        [id] [int] NOT NULL,
        [name] [nvarchar](64) NULL,
        [rated] [bit] NOT NULL DEFAULT ((0)),
        [intop] [bit] NOT NULL DEFAULT ((0)),
        [ratelimit] [smallint] NOT NULL,
 CONSTRAINT [PK_server_forums] PRIMARY KEY CLUSTERED
(
        [id] ASC
)WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY]
) ON [PRIMARY]
END
GO

IF NOT EXISTS (SELECT * FROM sys.indexes WHERE object_id = OBJECT_ID(N'[dbo].[server_forums]') AND name = N'IX_server_forums_name')
CREATE NONCLUSTERED INDEX [IX_server_forums_name] ON [dbo].[server_forums]
(
        [name] ASC
)WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY]
GO
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[subscribed_forums]') AND type in (N'U'))
BEGIN
CREATE TABLE [dbo].[subscribed_forums](
        [descript] [nvarchar](128) NULL,
        [id] [int] NOT NULL,
        [lastsync] [int] NOT NULL,
        [name] [nvarchar](64) NULL,
        [urcount] [int] NULL,
        [issync] [bit] NOT NULL DEFAULT ((0)),
        [priority] [int] NULL,
 CONSTRAINT [PK_subscribed_forums] PRIMARY KEY CLUSTERED
(
        [id] ASC
)WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY]
) ON [PRIMARY]
END
GO

IF NOT EXISTS (SELECT * FROM sys.indexes WHERE object_id = OBJECT_ID(N'[dbo].[subscribed_forums]') AND name = N'IX_subscribed_forums_name')
CREATE NONCLUSTERED INDEX [IX_subscribed_forums_name] ON [dbo].[subscribed_forums]
(
        [name] ASC
)WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY]
GO
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[users]') AND type in (N'U'))
BEGIN
CREATE TABLE [dbo].[users](
        [homepage] [nvarchar](120) NULL,
        [origin] [nvarchar](255) NULL,
        [publicemail] [nvarchar](60) NULL,
        [realname] [nvarchar](80) NULL,
        [spec] [nvarchar](100) NULL,
        [uid] [int] NOT NULL,
        [userclass] [int] NULL,
        [username] [nvarchar](60) NULL,
        [usernick] [nvarchar](100) NULL,
        [wherefrom] [nvarchar](100) NULL,
 CONSTRAINT [PK_users] PRIMARY KEY CLUSTERED
(
        [uid] ASC
)WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY]
) ON [PRIMARY]
END
GO
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[vars]') AND type in (N'U'))
BEGIN
CREATE TABLE [dbo].[vars](
        [name] [nvarchar](24) NOT NULL,
        [varvalue] [nvarchar](128) NULL,
 CONSTRAINT [PK_vars] PRIMARY KEY CLUSTERED
(
        [name] ASC
)WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY]
) ON [PRIMARY]
END
GO
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[download_topics]') AND type in (N'U'))
BEGIN
CREATE TABLE [dbo].[download_topics](
        [id] [int] IDENTITY(1,1) NOT NULL,
        [source] [nvarchar](32) NULL,
        [messageid] [int] NOT NULL,
        [hint] [nvarchar](128) NULL,
 CONSTRAINT [PK_download_topics] PRIMARY KEY CLUSTERED
(
        [id] ASC
)WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY]
) ON [PRIMARY]
END
GO
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[favorites]') AND type in (N'U'))
BEGIN
CREATE TABLE [dbo].[favorites](
        [id] [int] IDENTITY(1,1) NOT NULL,
        [mid] [int] NOT NULL,
        [fid] [int] NOT NULL,
        [comment] [nvarchar](255) NULL,
        [url] [ntext] NULL,
 CONSTRAINT [PK_favorites] PRIMARY KEY CLUSTERED
(
        [id] ASC
)WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY]
) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]
END
GO
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[favorites_folders]') AND type in (N'U'))
BEGIN
CREATE TABLE [dbo].[favorites_folders](
        [id] [int] IDENTITY(1,1) NOT NULL,
        [name] [nvarchar](100) NULL,
        [pid] [int] NOT NULL,
        [comment] [nvarchar](255) NULL,
 CONSTRAINT [PK_favorites_folders] PRIMARY KEY CLUSTERED
(
        [id] ASC
)WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY]
) ON [PRIMARY]
END
GO
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[marks_outbox]') AND type in (N'U'))
BEGIN
CREATE TABLE [dbo].[marks_outbox](
        [id] [int] IDENTITY(1,1) NOT NULL,
        [mark] [int] NOT NULL,
        [mid] [int] NOT NULL,
 CONSTRAINT [PK_marks_outbox] PRIMARY KEY CLUSTERED
(
        [id] ASC
)WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY]
) ON [PRIMARY]
END
GO
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[messages]') AND type in (N'U'))
BEGIN
CREATE TABLE [dbo].[messages](
        [dte] [datetime] NOT NULL,
        [gid] [int] NOT NULL,
        [ismarked] [bit] NOT NULL DEFAULT ((0)),
        [isread] [tinyint] NOT NULL DEFAULT ((0)),
        [message] [ntext] NULL,
        [mid] [int] NOT NULL,
        [pid] [int] NOT NULL,
        [subject] [nvarchar](128) NULL,
        [tid] [int] NOT NULL,
        [uclass] [int] NULL,
        [uid] [int] NOT NULL,
        [usernick] [nvarchar](50) NULL,
        [article_id] [int] NULL,
        [readreplies] [bit] NOT NULL DEFAULT ((0)),
        [name] [nvarchar](160) NULL,
 CONSTRAINT [PK_messages] PRIMARY KEY CLUSTERED
(
        [mid] ASC
)WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY]
) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]
END
GO

IF NOT EXISTS (SELECT * FROM sys.indexes WHERE object_id = OBJECT_ID(N'[dbo].[messages]') AND name = N'IX_messages_dte')
CREATE NONCLUSTERED INDEX [IX_messages_dte] ON [dbo].[messages]
(
        [dte] ASC
)WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY]
GO

IF NOT EXISTS (SELECT * FROM sys.indexes WHERE object_id = OBJECT_ID(N'[dbo].[messages]') AND name = N'IX_messages_gid')
CREATE NONCLUSTERED INDEX [IX_messages_gid] ON [dbo].[messages]
(
        [gid] ASC
)WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY]
GO

IF NOT EXISTS (SELECT * FROM sys.indexes WHERE object_id = OBJECT_ID(N'[dbo].[messages]') AND name = N'IX_messages_pid')
CREATE NONCLUSTERED INDEX [IX_messages_pid] ON [dbo].[messages]
(
        [pid] ASC
)WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY]
GO

IF NOT EXISTS (SELECT * FROM sys.indexes WHERE object_id = OBJECT_ID(N'[dbo].[messages]') AND name = N'IX_messages_tid')
CREATE NONCLUSTERED INDEX [IX_messages_tid] ON [dbo].[messages]
(
        [tid] ASC
)WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY]
GO

IF NOT EXISTS (SELECT * FROM sys.indexes WHERE object_id = OBJECT_ID(N'[dbo].[messages]') AND name = N'IX_messages_uid')
CREATE NONCLUSTERED INDEX [IX_messages_uid] ON [dbo].[messages]
(
        [uid] ASC
)WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY]
GO
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[topic_info]') AND type in (N'U'))
BEGIN
CREATE TABLE [dbo].[topic_info](
        [mid] [int] NOT NULL,
        [answers_count] [smallint] NULL,
        [answers_unread] [smallint] NULL,
        [answers_rate] [smallint] NULL,
        [answers_smile] [smallint] NULL,
        [answers_agree] [smallint] NULL,
        [answers_disagree] [smallint] NULL,
        [answers_me_unread] [smallint] NULL,
        [answers_marked] [smallint] NULL,
        [answers_last_update_date] [datetime] NULL,
        [this_rate] [smallint] NULL,
        [this_smile] [smallint] NULL,
        [this_agree] [smallint] NULL,
        [this_disagree] [smallint] NULL,
        [gid] [int] NULL,
 CONSTRAINT [PK_topic_info] PRIMARY KEY CLUSTERED
(
        [mid] ASC
)WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY]
) ON [PRIMARY]
END
GO

IF NOT EXISTS (SELECT * FROM sys.indexes WHERE object_id = OBJECT_ID(N'[dbo].[topic_info]') AND name = N'IX_topic_info_answers_last_update_date')
CREATE NONCLUSTERED INDEX [IX_topic_info_answers_last_update_date] ON [dbo].[topic_info]
(
        [answers_last_update_date] ASC
)WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY]
GO

IF NOT EXISTS (SELECT * FROM sys.indexes WHERE object_id = OBJECT_ID(N'[dbo].[topic_info]') AND name = N'IX_topic_info_gid')
CREATE NONCLUSTERED INDEX [IX_topic_info_gid] ON [dbo].[topic_info]
(
        [gid] ASC
)WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY]
GO
USE [Janus]
GO
IF NOT EXISTS (SELECT * FROM sys.foreign_keys WHERE object_id = OBJECT_ID(N'[dbo].[FK_topic_info_mid]') AND parent_object_id = OBJECT_ID(N'[dbo].[topic_info]'))
ALTER TABLE [dbo].[topic_info]  WITH CHECK ADD  CONSTRAINT [FK_topic_info_mid] FOREIGN KEY([mid])
REFERENCES [dbo].[messages] ([mid])
ON UPDATE CASCADE
ON DELETE CASCADE


Затем в очередной раз удалил БД Janus, и скриптом создал новую, но в нужном месте, SMS позволяет выполнять скрипты. Так у меня появилась БД с нужной схемой в нужном месте, но всё ещё без данных.

Данные я перенёс стандартным импортом. Правый щёлк на Databases — Janus, меню Task — Import data... Переносил в три захода, вначале перенёс все мелкие таблицы, где были данные, затем messages, а потом topic_info. М.б. можно и всё за один раз, но я уже утомился к тому времени соблюдать целостность БД.

Самое главное там — это нажать кнопочку Edit м поставить галку Enable identity insert напротив каждой таблицы. Мастер переносил данные быстрее Access, но тоже более получаса.

Затем я сжал БД, правый щёлк на БД Janus, меню Tasks — Shrink — Database. Хотя оно было почити не нужно, и БД, и лог были почти оптимальными, без лишка. В скрипте выше есть

ALTER DATABASE [Janus] SET AUTO_SHRINK OFF


но думаю, что делать ему ON неправильно, уж лучше по старинке, пальцами указать когда сжимать. Чтобы сразу потом и Back up из того же меню сделать.

Так я возобновил своё счастье, потеряв часов 5 на всякие эксперименты. По субъективным ощущениям бегает быстро, поиск правда тормозит так же. Надо будет попробовать full text search включить, что ли.

Надеюсь, эта моя сказка поможет кому сохранить время. Мне ещё предстоит всё это колдовство на рабочем месте...
... << RSDN@Home 1.2.0 alpha rev. 642>>
Re: История одного перехода на SQLEXPRESS
От: IT Россия linq2db.com
Дата: 05.02.06 23:50
Оценка:
Здравствуйте, akasoft, Вы писали:

Что бы перенести базу с одного места в другое, можено сделать ей Detach, скопировать, а потом Attach.
... << RSDN@Home 1.2.0 alpha rev. 0>>
Если нам не помогут, то мы тоже никого не пощадим.
Re[2]: История одного перехода на SQLEXPRESS
От: akasoft Россия  
Дата: 06.02.06 15:47
Оценка:
Здравствуйте, IT, Вы писали:

IT>Что бы перенести базу с одного места в другое, можено сделать ей Detach, скопировать, а потом Attach.


Да уже потом научился менюшкой пользоваться.
... << RSDN@Home 1.2.0 alpha rev. 642>> SQL Express 2005
Re[2]: История одного перехода на SQLEXPRESS
От: AndrewVK Россия http://blogs.rsdn.org/avk
Дата: 06.02.06 16:55
Оценка:
Здравствуйте, IT, Вы писали:

IT>Что бы перенести базу с одного места в другое, можено сделать ей Detach, скопировать, а потом Attach.


Можно еще бекап сделать. Дольше, но рамер бекапа получается меньше.
... << RSDN@Home 1.2.0 alpha rev. 642>>
AVK Blog
Re[3]: История одного перехода на SQLEXPRESS
От: akasoft Россия  
Дата: 06.02.06 18:22
Оценка:
Здравствуйте, AndrewVK, Вы писали:

AVK>Можно еще бекап сделать. Дольше, но рамер бекапа получается меньше.


Ни, у меня не вышло, говорит БД не та, если в новосозданную БД восстанавливать бекап с другой БД. Хотя, м.б. дело в том, что янусовский реструктуризатор добавляет нужные индексы и ключи, а SMS-ный импорт этого не делает.
... << RSDN@Home 1.2.0 alpha rev. 642>> SQL Express 2005
Re[4]: История одного перехода на SQLEXPRESS
От: AndrewVK Россия http://blogs.rsdn.org/avk
Дата: 07.02.06 09:15
Оценка:
Здравствуйте, akasoft, Вы писали:

A>Ни, у меня не вышло, говорит БД не та, если в новосозданную БД восстанавливать бекап с другой БД.


Там дурной интерфейс. Нужно ручками протоптать имена файлов и поставить галочку напротив overwrite existing database.
... << RSDN@Home 1.2.0 alpha rev. 642>>
AVK Blog
Re: История одного перехода на SQLEXPRESS
От: Smarty Россия  
Дата: 07.02.06 19:19
Оценка:
Здравствуйте, akasoft, Вы писали:

A>Само собой, что поставил я тулзы от сервера 2005, и пробовал всё из Microsoft SQL Server Management Studio.

Пардон, а что Server Management Studio подхватывает экспресс-вариант сервера? Ну или он его, не важно... Короче — они дружат, SMS & SQLExpress?
<<Rule of Forum: После того, как вопрос задан... не поленитесь поставить отвечавшему оценку!>>
Re[2]: История одного перехода на SQLEXPRESS
От: akasoft Россия  
Дата: 07.02.06 19:28
Оценка:
Здравствуйте, Smarty, Вы писали:

S>Пардон, а что Server Management Studio подхватывает экспресс-вариант сервера? Ну или он его, не важно... Короче — они дружат, SMS & SQLExpress?


Вроде да. Протоколы-то одни и те же, разница в объёмах данных.
... << RSDN@Home 1.2.0 alpha rev. 642>> SQL Express 2005
Re[3]: История одного перехода на SQLEXPRESS
От: Smarty Россия  
Дата: 07.02.06 20:53
Оценка:
Здравствуйте, akasoft, Вы писали:

A>Здравствуйте, Smarty, Вы писали:


S>>Пардон, а что Server Management Studio подхватывает экспресс-вариант сервера? Ну или он его, не важно... Короче — они дружат, SMS & SQLExpress?


A>Вроде да. Протоколы-то одни и те же, разница в объёмах данных.


Ясно. Но как я понимаю SMS составная часть "большого" SQL Server 2005, а не станд-алоне приложение. Т.е. если на машине уже установлен Express, то накатить сверху ТОЛЬКО SMS не получится? Или есть диск с SQL Server 2005 то там можно выбрать установку только этого продукта? Просто как я понимаю Express+SMS это как раз та связка, что полностью удоволетворит мои девелоперские запросы в разрезе клиент-серверных аппликейшенов... Вот и хотелось бы ее поиметь.
<<Rule of Forum: После того, как вопрос задан... не поленитесь поставить отвечавшему оценку!>>
Re[4]: История одного перехода на SQLEXPRESS
От: retn нет
Дата: 07.02.06 22:28
Оценка: 20 (2)
Здравствуйте, Smarty, Вы писали:

Microsoft SQL Server Management Studio Express
... << RSDN@Home 1.2.0 alpha rev. 642>>
Re[4]: История одного перехода на SQLEXPRESS
От: akasoft Россия  
Дата: 08.02.06 06:25
Оценка: 14 (1)
Здравствуйте, Smarty, Вы писали:

S>Ясно. Но как я понимаю SMS составная часть "большого" SQL Server 2005, а не станд-алоне приложение. Т.е. если на машине уже установлен Express, то накатить сверху ТОЛЬКО SMS не получится?


Я накатывал всё с рассылаемого диска беты 2, всё замечательно накатывалось. В комплекте был диск SQL сервера, и при установке можно было выбрать только набор утилит. Сам подумай, серверная часть обычно ставится на сервер для работы круглосуточно и без локальной консоли. А управляют этим богатством обычно удалённо. Вот там-то утилиты и нужны.

S> Или есть диск с SQL Server 2005 то там можно выбрать установку только этого продукта?


Именно так.
... << RSDN@Home 1.2.0 alpha rev. 636>> SQLE 2005
Re: История одного перехода на SQLEXPRESS
От: FireShock Россия  
Дата: 10.03.06 22:14
Оценка:
Здравствуйте, akasoft, Вы писали:

A>Данные я перенёс стандартным импортом. Правый щёлк на Databases — Janus, меню Task — Import data...


В SMS у меня нет задачи Import Как и Экспорт. Что делать?
... << RSDN@Home 1.2.0 alpha rev. 648>>
Instagram
Re[2]: История одного перехода на SQLEXPRESS
От: akasoft Россия  
Дата: 11.03.06 08:14
Оценка:
Здравствуйте, FireShock, Вы писали:

FS>В SMS у меня нет задачи Import Как и Экспорт. Что делать?


У меня есть. Базу-то создал пустую, выбирал её?
... << RSDN@Home 1.2.0 alpha rev. 648>> SQL Express 2005
Re[3]: История одного перехода на SQLEXPRESS
От: FireShock Россия  
Дата: 11.03.06 17:17
Оценка:
Здравствуйте, akasoft, Вы писали:

A>У меня есть. Базу-то создал пустую, выбирал её?

Я, кажется, понял. У меня SMS Express. Т.е. обрезанная.

Но у меня вопрос срочный — Акцессовская БД уже предельного размера. Не пробовал ни кто делать не импорт в Сервер, а экспорт из Акцесса в SQL 2005? Я прождал 3 часа переноса, но только таблица Messages не перенеслась и ошибок не было. Остальные таблицы — без вопросов. Делал и в новую БД, и в уже созданную пустую (ту, которой скрипт по созданию ты сюда выложил).

Нужно ставить SMS из комплекта MS SQL Server 2005?

Благодарю.
Instagram
Re[4]: История одного перехода на SQLEXPRESS
От: akasoft Россия  
Дата: 11.03.06 18:31
Оценка: 3 (1)
Здравствуйте, FireShock, Вы писали:

FS>Не пробовал ни кто делать не импорт в Сервер, а экспорт из Акцесса в SQL 2005?


Невнимательно читаешь. Я делал, ждал долго, результат очень плох. Нафиг такой перенос.

FS>Нужно ставить SMS из комплекта MS SQL Server 2005?


Именно так.

Перечитай ещё раз моё "изложение", без танца с бубном, т.е. нескольких этапов переноса данных, никак не обойтись. Это ключевой момент.
... << RSDN@Home 1.2.0 alpha rev. 648>> SQL Express 2005
Re[5]: История одного перехода на SQLEXPRESS
От: FireShock Россия  
Дата: 12.03.06 09:52
Оценка:
Здравствуйте, akasoft, Вы писали:

A>Перечитай ещё раз моё "изложение", без танца с бубном, т.е. нескольких этапов переноса данных, никак не обойтись. Это ключевой момент.


Есть! Перешел. База стала весить метров на 30 все лишь больше (2.03 Гб) из ~1200000 сообщений. Благодарю.
... << RSDN@Home 1.2.0 alpha rev. 648>>
Instagram
Re[5]: История одного перехода на SQLEXPRESS
От: FireShock Россия  
Дата: 12.03.06 09:56
Оценка:
Здравствуйте, akasoft, Вы писали:

A>Перечитай ещё раз моё "изложение", без танца с бубном, т.е. нескольких этапов переноса данных, никак не обойтись. Это ключевой момент.

А переиндексацию потом делал? Без нее пока летает (в сравнении с Джетом)
... << RSDN@Home 1.2.0 alpha rev. 648>>
Instagram
Re[6]: История одного перехода на SQLEXPRESS
От: akasoft Россия  
Дата: 12.03.06 10:33
Оценка:
Здравствуйте, FireShock, Вы писали:

FS>А переиндексацию потом делал? Без нее пока летает (в сравнении с Джетом)


Какую ещё переиндексацию? Если делал, как я описывал, индексы правильные строятся в самом начале, при создании пустышки. Я там даже скрипт приводил.
... << RSDN@Home 1.2.0 alpha rev. 648>> SQL Express 2005
Re: История одного перехода на SQLEXPRESS
От: DEMON HOOD  
Дата: 08.05.06 06:13
Оценка:
Здравствуйте, akasoft, Вы писали:

Экспрес я нашёл... а что такое SMS?
silent RSDN@Home 1.2.0 alpha [647] Windows XP 5.1.2600.131072
Re[2]: История одного перехода на SQLEXPRESS
От: DEMON HOOD  
Дата: 08.05.06 07:27
Оценка:
Здравствуйте, DEMON HOOD, Вы писали:

DH>Экспрес я нашёл... а что такое SMS?


прикольно.... поднял тему и туда ещё топиков
Автор: retn
Дата: 08.02.06
набросало
silent RSDN@Home 1.2.0 alpha [647] Windows XP 5.1.2600.131072
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.