Commit acdb808abc819180529855fa2f919587fa0dec58

Authored by Marin Jankovski
1 parent c1dddf8c

Update database documentation.

doc/install/database_mysql.md 0 → 100644
... ... @@ -0,0 +1,45 @@
  1 +## Note
  2 +
  3 +We do not recommend using MySQL due to various issues. For example, case [(in)sensitivity](https://dev.mysql.com/doc/refman/5.0/en/case-sensitivity.html) and [problems](http://bugs.mysql.com/bug.php?id=65830) that [suggested](http://bugs.mysql.com/bug.php?id=50909) [fixes](http://bugs.mysql.com/bug.php?id=65830) [have](http://bugs.mysql.com/bug.php?id=63164) .
  4 +
  5 +## MySQL
  6 +
  7 + # Install the database packages
  8 + sudo apt-get install -y mysql-server mysql-client libmysqlclient-dev
  9 +
  10 + # Pick a database root password (can be anything), type it and press enter
  11 + # Retype the database root password and press enter
  12 +
  13 + # Secure your installation.
  14 + sudo mysql_secure_installation
  15 +
  16 + # Login to MySQL
  17 + mysql -u root -p
  18 +
  19 + # Type the database root password
  20 +
  21 + # Create a user for GitLab
  22 + # do not type the 'mysql>', this is part of the prompt
  23 + # change $password in the command below to a real password you pick
  24 + mysql> CREATE USER 'git'@'localhost' IDENTIFIED BY '$password';
  25 +
  26 + # Create the GitLab production database
  27 + mysql> CREATE DATABASE IF NOT EXISTS `gitlabhq_production` DEFAULT CHARACTER SET `utf8` COLLATE `utf8_unicode_ci`;
  28 +
  29 + # Grant the GitLab user necessary permissions on the table.
  30 + mysql> GRANT SELECT, LOCK TABLES, INSERT, UPDATE, DELETE, CREATE, DROP, INDEX, ALTER ON `gitlabhq_production`.* TO 'git'@'localhost';
  31 +
  32 + # Quit the database session
  33 + mysql> \q
  34 +
  35 + # Try connecting to the new database with the new user
  36 + sudo -u git -H mysql -u git -p -D gitlabhq_production
  37 +
  38 + # Type the password you replaced $password with earlier
  39 +
  40 + # You should now see a 'mysql>' prompt
  41 +
  42 + # Quit the database session
  43 + mysql> \q
  44 +
  45 + # You are done installing the database and can go back to the rest of the installation.
... ...
doc/install/databases.md
... ... @@ -2,52 +2,8 @@
2 2  
3 3 GitLab supports the following databases:
4 4  
5   -* MySQL (preferred)
6   -* PostgreSQL
7   -
8   -
9   -## MySQL
10   -
11   - # Install the database packages
12   - sudo apt-get install -y mysql-server mysql-client libmysqlclient-dev
13   -
14   - # Pick a database root password (can be anything), type it and press enter
15   - # Retype the database root password and press enter
16   -
17   - # Secure your installation.
18   - sudo mysql_secure_installation
19   -
20   - # Login to MySQL
21   - mysql -u root -p
22   -
23   - # Type the database root password
24   -
25   - # Create a user for GitLab
26   - # do not type the 'mysql>', this is part of the prompt
27   - # change $password in the command below to a real password you pick
28   - mysql> CREATE USER 'git'@'localhost' IDENTIFIED BY '$password';
29   -
30   - # Create the GitLab production database
31   - mysql> CREATE DATABASE IF NOT EXISTS `gitlabhq_production` DEFAULT CHARACTER SET `utf8` COLLATE `utf8_unicode_ci`;
32   -
33   - # Grant the GitLab user necessary permissions on the table.
34   - mysql> GRANT SELECT, LOCK TABLES, INSERT, UPDATE, DELETE, CREATE, DROP, INDEX, ALTER ON `gitlabhq_production`.* TO 'git'@'localhost';
35   -
36   - # Quit the database session
37   - mysql> \q
38   -
39   - # Try connecting to the new database with the new user
40   - sudo -u git -H mysql -u git -p -D gitlabhq_production
41   -
42   - # Type the password you replaced $password with earlier
43   -
44   - # You should now see a 'mysql>' prompt
45   -
46   - # Quit the database session
47   - mysql> \q
48   -
49   - # You are done installing the database and can go back to the rest of the installation.
50   -
  5 +* PostgreSQL (preferred)
  6 +* [MySQL](doc/install/database_mysql.md)
51 7  
52 8 ## PostgreSQL
53 9  
... ...
doc/install/installation.md
... ... @@ -144,7 +144,7 @@ GitLab Shell is an ssh access and repository management software developed speci
144 144  
145 145 # 5. Database
146 146  
147   -To setup the MySQL/PostgreSQL database and dependencies please see [doc/install/databases.md](./databases.md).
  147 +To setup the PostgreSQL/MySQL database and dependencies please see [doc/install/databases.md](doc/install/databases.md).
148 148  
149 149  
150 150 # 6. GitLab
... ...