±à¼ÍƼö: |
±¾ÎÄÀ´×ÔÓÚÍøÂ磬ÎÄÕÂÖ÷Òª½éÉÜÈçºÎ´î½¨Ò»Ì×»ùÓÚTeam
Foundation ServerµÄÊý¾Ý¿âCI¡¢CDÁ÷Ë®Ïß¡£ |
|
¸ÅÊö£º
²¿·ÖÆóÒµÔÚʵʩDevOps¹ý³ÌÖУ¬·¢ÏÖÊý¾Ý¿âµÄÉý¼¶³ÉΪÆóÒµDevOpsÁ÷Ë®ÏßÉϵĺËÐÄÆ¿¾±£¬Ó¦ÓóÌÐò·¢²¼ÆµÂÊÔ½À´Ô½¿ì£¬µ«ÊÇÊý¾Ý¿âÒÀÈ»²ÉÓÃÊÖ¹¤¸üеķ½Ê½£¬µ¼ÖÂÊý¾Ý¿âÉý¼¶Ð§ÂʵÍÏ¡¢·çÏսϴó¡£ËùÒÔ½¨Á¢Ò»Ì×ÍêÕûµÄÓ¦ÓÃ+Êý¾Ý¿âµÄDevOpsÁ÷Ë®ÏßÊÇÖÁ¹ØÖØÒªµÄ¡£½ÓÏÂÀ´Ð¡±à½«´ø´ó¼ÒÊÖ°ÑÊִһÌ×»ùÓÚTeam
Foundation ServerµÄÊý¾Ý¿âCI¡¢CDÁ÷Ë®Ïß¡£
·½°¸£º
»ùÓÚÊý¾Ý¿âÉý¼¶\Ç¨ÒÆ½Å±¾£º²ÉÓÃÏñ±àдӦÓôúÂëÒ»ÑùµÄ·½Ê½È¥±àдÊý¾Ý¿âÉý¼¶½Å±¾£¬¶Ô½Å±¾Îļþ½øÐÐ˳Ðò±àºÅ²¢Ç¨Èë´úÂë¿â£¬ÔÚ³ÖÐø·¢²¼½×¶Î°´ÕÕ±àºÅÒÀ´Î˳ÐòÖ´ÐÐÊý¾Ý¿âÉý¼¶½Å±¾¡£Íê³ÉÊý¾Ý¿âµÄÉý¼¶\±ä¸ü¶¯×÷¡£
¹¤¾ß£º

¿ÉÒÔʹÓÃFlyway,Evolve, LiquebaseµÈ¹¤¾ßÍê³ÉÊý¾Ý¿â½Å±¾µÄÉý¼¶\Ç¨ÒÆ¡£
ΪÁËÁé»îÓ¦¶Ô¸÷ÖÖ³¡¾°£¬Æ½Ì¨¡¢ÓïÑÔ£¬ÒÔ¼°·½±ã´ó¼Òѧϰ£¬Ð¡±à¿ª·¢ÁËÒ»¸ö¼òµ¥µÄ¿çƽ̨С¹¤¾ßSQLToolkitÀ´Íê³ÉÊý¾Ý¿â½Å±¾µÄ˳ÐòÖ´ÐÐ,
²¢¿ªÔ´µ½Github£º
https://github.com/lean-soft/SQLToolkit
DevOpsÁ÷Ë®Ïßͼ£º

Á÷Ë®Ï߸ÅÊö£º
¿ª·¢ÈËÔ±ÔÚ±àдӦÓÃÂß¼µÄͬʱ£¬±àдSQLÉý¼¶½Å±¾£¬È·±£½«Ó¦ÓôúÂëÒÔ¼°SQLÉý¼¶½Å±¾Ò»²¢Ç¨Èëµ½ÅäÖÿ⡣
ÅäÖÿâ±ä¸üºó´¥·¢³ÖÐø¼¯³É£¬×Ô¶¯±àÒëÓ¦Óã¬ÒÔ¼°·¢²¼Êý¾Ý¿âÉý¼¶½Å±¾¡£
·¢²¼·þÎñÔÚ²âÊÔ»·¾³Êý¾Ý¿â°´±àºÅÒÀ´Î˳ÐòÖ´ÐÐSQLÉý¼¶½Å±¾Íê³ÉÊý¾Ý¿âÉý¼¶£¬²¢Íê³ÉÓ¦ÓÃÉý¼¶²¿Êð¡£
²âÊÔ»·¾³¾¹ý²âÊÔºó£¬Ö´ÐÐQAÒÔ¼°Staging»·¾³µÄÊý¾Ý¿âÉý¼¶ÒÔ¼°Ó¦ÓÃÉý¼¶²¿Êð¡£
Ïà¹Ø»·¾³²âÊÔûÓÐÎÊÌ⣬Ïà¹ØÈËÔ±¶ÔÓ¦ÓÃÒÔ¼°Êý¾Ý¿âÉý¼¶½Å±¾½øÐÐÆÀÉ󣬲¢Íê³ÉÉú²ú»·¾³µÄ×Ô¶¯»¯²¿Êð¡£
×¢Ò⣺ÕâÀïµÄÊý¾Ý½Å±¾ÆÀÉóÐèÒªÕë¶ÔÊý¾Ý¿âÉÏÏÂÎĽøÐÐÆÀÉó¡£¶ø²»Êǽö½öÆÀ¹À½Å±¾£¬ÕâÑù
²ÅÄܱ£Ö¤Êý¾ÝµÄÍêÕûÐÔ¡£
Óŵ㣺
1. ´úÂëÓëÉý¼¶½Å±¾Í¬Ê±Ç¨Èëµ½ÅäÖÿ⣬±£Ö¤ÁËÓ¦ÓóÌÐòÓëÊý¾Ý¿âͳһ°æ±¾£¬±ÜÃâ³öÏÖÓ¦ÓóÌÐòÓëÊý¾Ý¿âÎÞ·¨¶ÔÓ¦°æ±¾µÄÎÊÌâ¡£
2. ͨ¹ýÊý¾Ý¿â½Å±¾¼Ç¼¿ÉÒÔ·½±ãµÄ¸ú×ÙÊý¾Ý¿â±ä¸üÀúÊ·¡£
3. ͨ¹ýÊý¾Ý¿âÉý¼¶½Å±¾ÖеÄÊÂÎñ¿ÉÒÔ¿ØÖƻعö¡£
4. ͨ¹ý¶ÔÊý¾Ý¶ÔÏóÒÔ¼°Êý¾ÝµÄÁé»î´¦Àí±£Ö¤Êý¾ÝµÄÍêÕûÐÔ¡£
Á÷Ë®Ïߴ£º
ÏîÄ¿½á¹¹£º
Ê×ÏÈÐèÒªÔÚÓ¦ÓÃĿ¼Ï´´½¨Ò»¸öÎļþ¼Ð£¬ÓÃÀ´´æ·Å¶ÔÓ¦µÄÊý¾Ý¿âÉý¼¶½Å±¾¡£ ²¢°´ÕÕ˳Ðò±àºÅ´æ´¢¶ÔÓ¦µÄ½Å±¾Îļþ£¬ÈçÏÂͼËùʾ£º

½Å±¾ÄÚÈݲο¼£º01-****.sql
Use devopslabs
CREATE TABLE [dbo].[Configuration]
(
[Id] [int] IDENTITY(1,1) NOT NULL,
[Description] [nvarchar](MAX) NULL,
[Key] [nvarchar](MAX) NULL,
[Value] [nvarchar](MAX) NULL,
[DisplayName] [nvarchar](MAX) NULL
)
ALTER TABLE [dbo].[Configuration] ADD CONSTRAINT
PK_Configuration
PRIMARY KEY ([Id]) |
½Å±¾ÄÚÈݲο¼£º02-****.sql
Use devopslabs
Insert into Configuration(DisplayName,[Key],Value,[Description])Values
(N'Õ¾µãÃû³Æ','GeneralSetttings_SiteName','','SiteName') |
³ÖÐø¼¯³É´î½¨
ÔÚ³ÖÐø¼¯³ÉÖУ¬½«SQLÉý¼¶½Å±¾Îļþ¼Ð·¢²¼µ½Build Artifacts£¬¹©³ÖÐø²¿ÊðʹÓã¬ÈçÏÂͼËùʾ£º

·¢²¼½á¹ûÈçÏ£º

³ÖÐø²¿Êð´î½¨
ÔÚ³ÖÐø²¿Êð²½ÖèÖУ¬Í¨¹ýSQLToolkit¹¤¾ßÍê³ÉÊý¾Ý¿â±¸·ÝÒÔ¼°Éý¼¶£º

±¸·Ý½Å±¾ÃüÁîÈçÏ£º
SQLToolkit Backup
-s $(DATABASE_SERVER) -n $(DATABASE_NAME) -u
$(DATABASE_USERNAME) -p $(DATABASE_PASSWORD)
-path /home/sqlbackup/database.bak |
Éý¼¶½Å±¾ÃüÁîÈçÏ£º
SQLToolkit RunScripts
-s $(DATABASE_SERVER) -n $(DATABASE_NAME)
-u $(DATABASE_USERNAME) -p $(DATABASE_PASSWORD)
-path ~/LabsUpgrade/SQLScripts_Up |
Ö´Ðнá¹ûÈçÏ£º

Êý¾Ý¿â£º
Êý¾Ý¿â×Ô¶¯Éú³ÉST_DatabaseVersion±í£¬ÓÃÀ´´æ´¢µ±Ç°Ó¦ÓóÌÐòµÄÊý¾Ý¿â°æ±¾¡£
°üÀ¨Êý¾Ý¿â½Å±¾Ãû³Æ¡¢Ö´Ðнá¹û¡¢Ö´ÐÐʱ¼äµÈ¡£ ÕâÑùÏ´ÎÉý¼¶Ê±£¬¹¤¾ß»áÅжϵ±Ç°Êý¾Ý¿â°æ±¾£¬²¢´Óµ±Ç°Êý¾Ý¿â°æ±¾µÄ»ù´¡ÉÏ˳ÐòÖ´ÐС°Î´Ö´ÐеÄÊý¾Ý¿â½Å±¾¡±
¡£¼´±ãÊÇ»·¾³°æ±¾²»Ò»ÖÂÒÀÈ»¿ÉÒÔÍê³ÉÊý¾Ý¿âµÄÉý¼¶¶¯×÷¡£

×ܽ᣺
ͨ¹ý´î½¨Êý¾Ý¿âµÄCI¡¢CD¿ÉÒÔÏû³ýÓ¦ÓÃÁ÷Ë®ÏߵĺËÐÄÆ¿¾±£¬ÈÃÓ¦ÓóÌÐò·¢²¼ÓëÊý¾Ý¿â·¢²¼±£³ÖÒ»Ö¡£¼õÉÙÁËDBAÊÖ¹¤²Ù×÷´øÀ´µÄЧÂʵÍÏ£¬ÈËΪ´íÎ󣬰²È«·çÏÕµÈÎÊÌâ¡£ÈÃDBAרעÓÚ¸üÓмÛÖµµÄ¹¤×÷¡£½áºÏ»ùÓÚ¹¦ÄÜ·ÖÖ§µÄ¿ª·¢·½Ê½£¬¿ÉÒÔ·½±ãµÄ¸ú×ÙÊý¾Ý¿â±ä¸ü¶ÔÓ¦µÄ¹¦ÄÜ¡£
ÓÉÓÚÊý¾ÝÊǹ«Ë¾µÄºËÐļÛÖµ£¬ÔÚÊý¾Ý¿âÉý¼¶¹ý³ÌÖÐÒ»¶¨ÒªÈ·±£Êý¾ÝµÃµ½ÓÐЧµÄ±¸·Ý£¬ÔÚ³öÏÖÎÊÌâʱ¿ÉÒÔ˳Àû»Ø¹ö£¬ÒÑÈ·±£Êý¾ÝµÄÍêÕûÐÔ£¬ËùÒÔÓÐЧµÄ±¸·ÝÒÔ¼°»Ø¹ö½Å±¾ÖÁ¹ØÖØÒª¡£ |