user 정보 수정 시 null 이 발생해요

작성자 이경미 수정일 2023-01-04 09:56

#SpraklingSoDA3.0

오류 메세지 혹은 현상

  • 특정 사용자의 정보를 변경할 때, null 값이 뜨면서 수정사항이 반영되지 않습니다. 
    예시 ) superuser



원인
  • gitlab 에 해당 사용자의 계정이 추가되어 있지 않아 발생한 현상입니다. 
  • mariaDB 에는 정상적으로 insert 된 것을 확인하였습니다. 
    ( 접근이 어려움이 있다면 "mariaDB 접근 방법" 게시글을 참고해주세요. )
    # select * from user where userid='조회할 userid';
    select * from user where userid='superuser';
    +-----------+----------------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------+-----------+----------------------+-------------+---------------------+------------------+-----------+------+--------------+--------------+------+---------------------+
    | userid    | password                                                                                                                         | password_salt                                                    | username  | email                | issuperuser | last_login_time     | service_password | gitlab_id | lock | account_date | request_flag | dept | create_dt           |
    +-----------+----------------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------+-----------+----------------------+-------------+---------------------+------------------+-----------+------+--------------+--------------+------+---------------------+
    | superuser | C70D8A4D1F88EED1B460328700A31FF21B761485A254F010C7C6A5F0AF74B6086680109EAB849DAAD4E30D5662BECA31A2CB0CE42B6CDEC679926619AEF9134D | 220426297A17AEA60B826C8365371CA7C2A3A7F9D37343205F5E4F826CB47B62 | superuser | support@agilesoda.ai |           1 | 2023-01-03 04:41:11 | admin011         |        -1 |    0 | NULL         | NULL         | NULL | 2021-07-30 08:53:47 |
    +-----------+----------------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------+-----------+----------------------+-------------+---------------------+------------------+-----------+------+--------------+--------------+------+---------------------+
    1 row in set (0.000 sec)

  • gitlab 에 접속하여 user 목록을 조회할 수 있습니다. 
    URL : http://<Address IP>/gitlab
    (접속 시 어려움이 있다면 "gitlab 포탈 접속 방법" 게시글을 참고해주세요.)
    • Username : root
    • Password : default password 입력

도구 > Overview > Users


  • GitLab 포탈을 확인했을 때, 수정을 진행한 superuser 의 계정이 없는 것을 확인할 수 있습니다. 
  • 즉, user 생성시 정상적으로 생성되지 않은 것으로 확인됩니다. 


문제 해결

GitLab 에 user 추가.


1. DB 에 추가되어 있는 user 정보 확인  

# select userid,username,email from user where userid='조회할 userid';
select userid,username,email,gitlab_id from user where userid='superuser';
+-----------+-----------+----------------------+-----------+
| userid    | username  | email                | gitlab_id |
+-----------+-----------+----------------------+-----------+
| superuser | superuser | support@agilesoda.ai |        -1 |
+-----------+-----------+----------------------+-----------+
1 row in set (0.000 sec)

2.  GitLab 포탈 접속

URL : http://<Address IP>/gitlab

  • Username : root
  • Password : default password 입력


3.  User 추가

도구 > Overview > Users


도구 > Overview > Users > New User

DB 에서 확인한 정보를 기반으로 user 를 생성합니다. 

superuser 인 경우 Access level 을 Admin 으로 지정하고, 일반 사용자의 경우 Regular 를 선택합니다.


정상 생성 확인 

gitlab 에 추가한 superuser 가 정상적으로 생성된 것을 확인할 수 있습니다. 


4. User 정보 수정 

SparklingSoDA 에서는 gitlab 을 제어하기 위해 사용자 생성 시 유니크 값으로 gitlab id 를 가지고 있습니다.

따라서 생성된 user 의 id 값을 DB 에서 수정해주어야 합니다. 

생성된 user 를 클릭하여 상세 화면으로 접근합니다. 

표시된 사항과 같이 ID 값을 확인할 수 있습니다. 


MariaDB 수정

DB 에 접속하여 해당 user 의 gitlab id 값을 수정합니다.

# update user set gitlab_id=<확인된 gitlab_id> where userid='수정할 userid';
MariaDB [soda]> update user set gitlab_id=15 where userid='superuser';
Query OK, 1 row affected (0.001 sec)
Rows matched: 1  Changed: 1  Warnings: 0

MariaDB [soda]> select userid,username,email,gitlab_id from user where userid='superuser';
+-----------+-----------+----------------------+-----------+
| userid    | username  | email                | gitlab_id |
+-----------+-----------+----------------------+-----------+
| superuser | superuser | support@agilesoda.ai |        15 |
+-----------+-----------+----------------------+-----------+
1 row in set (0.000 sec)


5. 작동 확인 











아티클이 유용했나요?

훌륭합니다!

피드백을 제공해 주셔서 감사합니다.

도움이 되지 못해 죄송합니다!

피드백을 제공해 주셔서 감사합니다.

아티클을 개선할 수 있는 방법을 알려주세요!

최소 하나의 이유를 선택하세요
CAPTCHA 확인이 필요합니다.

피드백 전송

소중한 의견을 수렴하여 아티클을 개선하도록 노력하겠습니다.

02-558-8300