-
Notifications
You must be signed in to change notification settings - Fork 6
Migration from NC3
Mitsuru Mutaguchi edited this page Jun 15, 2023
·
11 revisions
NetCommons3 からの移行について
- NetCommons3.2.0以上
# migration option (Common)
MIGRATION_JOB_MONITOR=true
MIGRATION_JOB_LOG=true
MIGRATION_CONFIG_PATH=C:\connect-cms\_migration_config\migration_config_nc3.ini
# migration option (NetCommons3)
NC3_DB_CONNECTION=mysql
NC3_DB_HOST=127.0.0.1
NC3_DB_PORT=3306
NC3_DB_DATABASE=xxxxxx
NC3_DB_USERNAME=xxxxxx
NC3_DB_PASSWORD=xxxxxx
NC3_DB_PREFIX=nc3_
NC3_EXPORT_UPLOADS_PATH=/path_to_nc3/app/Uploads/
NC3_APPLICATION_YML_PATH=/path_to_nc3/app/Config/application.yml
上記のように、.env に移行元のNC2 情報を設定する。
migration config のサンプル
app/Traits/Migration/sample/migration_config/migration_config_nc3.sample.ini
migration config は、移行コマンド(エクスポート・インポート)の設定ファイルです。
基本は設定変更しなくても動きます。
$ php artisan command:ExportNc3 対象 [redo(やり直し)]
$ php -d memory_limit=512M -d allow_url_fopen=1 artisan command:ExportNc3 all {redo}
$ php -d memory_limit=512M -d allow_url_fopen=1 artisan command:ExportNc3 uploads {redo}
$ php -d memory_limit=512M -d allow_url_fopen=1 artisan command:ExportNc3 users {redo}
$ php -d memory_limit=512M -d allow_url_fopen=1 artisan command:ExportNc3 plugins all {redo}
$ php -d memory_limit=512M -d allow_url_fopen=1 artisan command:ExportNc3 plugins blogs {redo}
$ php -d memory_limit=512M -d allow_url_fopen=1 artisan command:ExportNc3 plugins databases {redo}
$ php -d memory_limit=512M -d allow_url_fopen=1 artisan command:ExportNc3 pages {redo}
export した際に storage\app\migration\import
以下にデータが作成される。
エクスポート以外はNC2移行と同様です。 Migration from NC2 ページを参照してください。
エクスポート時に出力した移行ファイルを部分的に上書きします。frames
のみ対応。
storage\app\migration\@nc3_override
下に追加する。
上書き設定も export した際に作成される storage\app\migration\import
以下と同じ構成でフォルダを作成し、変更内容を配置する。
サンプルは app/Traits/Migration/sample/migration の下にあります。
NC2移行と同様です。 Migration from NC2#追加インポート設定 を参照してください。
NC2移行と同様です。 Migration from NC2#インポートファイルの上書き設定 を参照してください。
前提のNetCommons3.2.0以上の補足情報
NetCommons3.2.0で追加されたDB項目「rooms.sort_key」「pages.sort_key」がないと、Connectの移行コマンド command:ExportNc3 でエラー(※)が出ます。
NetCommons3.2.0以上にアップデートしてください。
C:\projects\connect-cms\htdocs\connect-cms>php -d memory_limit=512M artisan command:ExportNc3 all redo
frame_id,,category,message
,,Start exportNc3.,
,,Start nc3ExportBasic.,
,,Start nc3ExportUploads.,
,,Start nc3ExportUsers.,
,,Start nc3ExportRooms.,
Illuminate\Database\QueryException
SQLSTATE[42S22]: Column not found: 1054 Unknown column 'rooms.sort_key' in 'order clause' (SQL: select `rooms`.*,
`rooms_languages`.`name` as `room_name` from `rooms` inner join `rooms_languages` on `rooms_languages`.`room_id` = `rooms`.`id` and `rooms_languages`.`language_id` = 2 where `space_id` in (4, 2) order by `rooms`.`sort_key` asc)
at C:\projects\connect-cms\htdocs\connect-cms\vendor\laravel\framework\src\Illuminate\Database\Connection.php:712
708▕ // If an exception occurs when attempting to run a query, we'll format the error
709▕ // message to include the bindings with SQL, which will make this exception a
710▕ // lot more helpful to the developer instead of just the database's errors.
711▕ catch (Exception $e) {
➜ 712▕ throw new QueryException(
713▕ $query, $this->prepareBindings($bindings), $e
714▕ );
715▕ }
716▕ }
1 C:\projects\connect-cms\htdocs\connect-cms\vendor\doctrine\dbal\lib\Doctrine\DBAL\Driver\PDO\Exception.php:18
Doctrine\DBAL\Driver\PDO\Exception::("SQLSTATE[42S22]: Column not found: 1054 Unknown column 'rooms.sort_key' in 'order
clause'")
2 C:\projects\connect-cms\htdocs\connect-cms\vendor\doctrine\dbal\lib\Doctrine\DBAL\Driver\PDOConnection.php:87
Doctrine\DBAL\Driver\PDO\Exception::new(Object(PDOException))
C:\projects\connect-cms\htdocs\connect-cms>php -d memory_limit=512M artisan command:ExportNc3 all redo
frame_id,,category,message
,,Start exportNc3.,
,,Start nc3ExportBasic.,
,,Start nc3ExportUploads.,
,,Start nc3ExportUsers.,
,,Start nc3ExportRooms.,
,,「すべての会員をデフォルトで参加させる」ルームはグループ作成しない,ルーム名=コミュニティ
,,Start nc3ExportBlog.,
,,Start nc3ExportBbs.,
,,Start nc3ExportMultidatabase.,
,,Start nc3ExportTopics.,
,,Start nc3ExportCabinet.,
,,Start nc3ExportRegistration.,
,,Start nc3ExportFaq.,
,,Start nc3ExportLinklist.,
,,Start nc3ExportCounter.,
,,Start nc3ExportCalendar.,
,,Start nc3ExportReservation.,
,,Start nc3ExportPhotoalbum.,
,,Start nc3ExportVideo.,
,,Start nc3ExportSearch.,
Illuminate\Database\QueryException
SQLSTATE[42S22]: Column not found: 1054 Unknown column 'pages.sort_key' in 'order clause' (SQL: select `pages`.`id` from `pages` inner join `rooms` on `rooms`.`id` = `pages`.`room_id` and `rooms`.`space_id` = 2 where `pages`.`parent_id` is not null order by `pages`.`sort_key` asc limit 1)
at C:\projects\connect-cms\htdocs\connect-cms\vendor\laravel\framework\src\Illuminate\Database\Connection.php:712
708▕ // If an exception occurs when attempting to run a query, we'll format the error
709▕ // message to include the bindings with SQL, which will make this exception a
710▕ // lot more helpful to the developer instead of just the database's errors.
711▕ catch (Exception $e) {
➜ 712▕ throw new QueryException(
713▕ $query, $this->prepareBindings($bindings), $e
714▕ );
715▕ }
716▕ }
1 C:\projects\connect-cms\htdocs\connect-cms\vendor\doctrine\dbal\lib\Doctrine\DBAL\Driver\PDO\Exception.php:18
Doctrine\DBAL\Driver\PDO\Exception::("SQLSTATE[42S22]: Column not found: 1054 Unknown column 'pages.sort_key' in 'order
clause'")
2 C:\projects\connect-cms\htdocs\connect-cms\vendor\doctrine\dbal\lib\Doctrine\DBAL\Driver\PDOConnection.php:87
Doctrine\DBAL\Driver\PDO\Exception::new(Object(PDOException))
-
https://github.com/NetCommons3/Pages/commit/77840e492352a21f7300ab1fa877f47f94f0bd1c
- Pages 3.2.0で sort_key 追加
-
https://github.com/NetCommons3/Rooms/commit/8edfd1ea18f4b45f5aee7f961d0480048e2d6fc9
- Rooms 3.2.0で sort_key 追加
-
https://github.com/NetCommons3/NetCommons3/releases/tag/3.2.0
- NC3.2.0(2018)
- home
- Overview
- Install
- Install (インストール)(Linux等へのインストール:root権限ある場合)
-
Install-sakura(さくらのレンタルサーバ)
- Install-sakura-root(ドキュメントルート版)
- Install-Xserver(XServer)
- Install-lolipop(ロリポップ-ハイスピードプラン)
- Install-ColorfulBox(カラフルボックス)
- install-CentOS7+PHP7
- Install-XAMPP(Windows+XAMPP)
- install-Docker
- Update
- Plans
- Data
- File Upload
- Design
- Theme(テーマ)
- Font-Icon
- Button(ボタン)
- Display of input error(入力エラーの表示)
- Multi Language
- Policies
- Plugin
- Basic function(基本の関数)
- Opac(蔵書管理)
- OpeningCalendar(開館カレンダー)
- Template(テンプレート)
- Cabinet(キャビネット)
- Whatsnew(新着)
- Search(サイト内検索)
- Approval(承認機能)
- Holidays(祝日管理)
- Menu(メニュー)
-
OriginalPlugin(オリジナル・プラグイン開発)
- OriginalPluginFiles(ファイル一覧)
- Sample.php
- SamplePost.php
- plugin.ini
- SamplesPlugin.php
- create_samples_table.php
- create_sample_posts_table.php
- samples_frame_edit_tab.blade.php
- card/index.blade.php
- card/template.ini
- default/bucket.blade.php
- default/edit.blade.php
- default/index.blade.php
- default/list_buckets.blade.php
- default/show.blade.php
- default/template.ini
- WYSIWYG
- Session
- Programing tips
- Rule(ルール)
- Laravel method tips
- Laravel reference pages
- PHP
- phpcs
- Datetimepicker
- Hook(処理のフック)
- SQL
- Pull-Request(Web画面上)
- Post
- Optimize
- Composer
- npm
- コントローラー側の$this--can()-の調査
- API (外部サービスAPI)
- Test Case(テストケース)
- memo(永原のメモ)
- TCPDF(実装サンプル)
- Phpunit(ユニットテスト)
-
Dusk(ブラウザテスト)
- Github-Actions-Dusk(Github Actionsでブラウザテスト)
- Dusk-Manual(マニュアル自動生成)
- Develop-Windows(Windows開発環境)
- users_columns(ユーザ任意項目)
- container-page-beta(コンテナ方式(ページ)対応(ベータ版))
- Migration
- Other
- Link
- MultiLanguage(多言語化の際の注意点)