天天看點

普通使用者安裝MySQL資料庫

一、Root使用者操作

1、建立普通使用者

1

2

<code>[root@localhost ~]</code><code># useradd ipdev</code>

<code>[root@localhost ~]</code><code># echo "ipdev" |passwd --stdin ipdev &gt; /dev/null</code>

2、建立運作mysql服務的使用者

<code>[root@localhost ~]</code><code># useradd mysql</code>

3、驗證使用者是否建立成功

3

4

<code>[root@localhost ~]</code><code># id ipdev</code>

<code>uid=500(ipdev) gid=500(ipdev) 組=500(ipdev)</code>

<code>[root@localhost ~]</code><code># id mysql</code>

<code>uid=501(mysql) gid=501(mysql) 組=501(mysql)</code>

4、賦予普通使用者ipdev執行sudo的權限

<code>[root@localhost ~]</code><code># echo "ipdev ALL=(ALL:ALL) ALL" &gt; /etc/sudoers.d/ipdev</code>

<code>[root@localhost ~]</code><code># chmod 400 /etc/sudoers.d/ipdev</code>

5、首次初始化資料庫時的依賴包先安裝之

<code>[root@localhost ~]</code><code># yum -y install libaio</code>

二、Indev使用者操作 | 普通使用者

1、準備工作

5

6

7

8

<code>[ipdev@localhost ~]$ </code><code>who</code>

<code>root     tty1         2014-12-04 23:24</code>

<code>root     pts</code><code>/0</code>        <code>2014-12-04 23:25 (192.168.0.103)</code>

<code>ipdev    pts</code><code>/1</code>        <code>2014-12-04 23:31 (192.168.0.103)</code>

<code>[ipdev@localhost ~]$ </code><code>pwd</code>

<code>/home/ipdev</code>

<code>[ipdev@localhost ~]$ </code><code>ls</code>

<code>mysql-5.6.12-linux-glibc2.5-x86_64.</code><code>tar</code><code>.gz</code>

2、解壓Mysql安裝包

<code>[ipdev@localhost ~]$ </code><code>tar</code> <code>xf mysql-5.6.12-linux-glibc2.5-x86_64.</code><code>tar</code><code>.gz </code>

<code>[ipdev@localhost ~]$ </code><code>ln</code> <code>-s mysql-5.6.12-linux-glibc2.5-x86_64 mysql</code>

<code>[ipdev@localhost ~]$ ll</code>

<code>總用量 299028</code>

<code>lrwxrwxrwx  1 ipdev ipdev        34 12月  4 23:35 mysql -&gt; mysql-5.6.12-linux-glibc2.5-x86_64</code>

<code>drwxrwxr-x 13 ipdev ipdev      4096 12月  4 23:35 mysql-5.6.12-linux-glibc2.5-x86_64</code>

<code>-rw-rw-r--  1 ipdev ipdev 306192671 12月  4 23:33 mysql-5.6.12-linux-glibc2.5-x86_64.</code><code>tar</code><code>.gz</code>

3、建立資料存儲目錄

<code>[ipdev@localhost ~]$ </code><code>mkdir</code> <code>data</code>

4、賦予Mysql安裝程式目錄和資料存放目錄權限

#重點标記:資料存放目錄data的權限一定要控制好,否則後續初始化資料庫的時候就會報錯

9

10

11

12

13

14

15

16

17

18

19

<code>[ipdev@localhost ~]$ </code><code>chown</code> <code>-R mysql data</code>

<code>chown</code><code>: 正在更改</code><code>"data/"</code> <code>的所有者: 不允許的操作</code>

<code>[ipdev@localhost ~]$ </code><code>sudo</code> <code>chown</code> <code>-R mysql data    </code>

<code>We trust you have received the usual lecture from the </code><code>local</code> <code>System</code>

<code>Administrator. It usually boils down to these three things:</code>

<code>    </code><code>#1) Respect the privacy of others.</code>

<code>    </code><code>#2) Think before you type.</code>

<code>    </code><code>#3) With great power comes great responsibility.</code>

<code>[</code><code>sudo</code><code>] password </code><code>for</code> <code>ipdev: </code>

<code>[ipdev@localhost ~]$ </code><code>sudo</code> <code>chown</code> <code>-R mysql mysql   </code>

<code>總用量 299032</code>

<code>drwxrwxr-x  2 mysql mysql      4096 12月  4 23:35 data</code>

<code>lrwxrwxrwx  1 mysql ipdev        34 12月  4 23:35 mysql -&gt; mysql-5.6.12-linux-glibc2.5-x86_64</code>

<code>drwxrwxr-x 13 mysql ipdev      4096 12月  4 23:35 mysql-5.6.12-linux-glibc2.5-x86_64</code>

5、初始化資料庫

<code>[ipdev@localhost ~]$ .</code><code>/mysql/scripts/mysql_install_db</code> <code>--user=mysql --datadir=</code><code>/home/ipdev/data/</code> <code>--basedir=</code><code>/home/ipdev/mysql/</code>

在初始化資料庫的時候,我遇到兩個錯誤如下

<code>***********************************遇到的錯誤***********************************************************</code>

<code>Installing MySQL system tables...2014-12-04 23:37:26 0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option (see documentation </code><code>for</code> <code>more</code> <code>details).</code>

<code>2014-12-04 23:37:26 1438 [Warning] Can't create </code><code>test</code> <code>file</code> <code>/home/ipdev/data/localhost</code><code>.lower-</code><code>test</code> <code>錯誤1</code>

<code>2014-12-04 23:37:26 1438 [Warning] Can't create </code><code>test</code> <code>file</code> <code>/home/ipdev/data/localhost</code><code>.lower-</code><code>test</code>

<code>2014-12-04 23:37:26 1438 [Warning] Buffered warning: Changed limits: max_open_files: 1024 (requested 5000)   錯誤2</code>

<code>*********************************************************************************************************</code>

解決辦法

<code>錯誤1的解決辦法:</code>

<code>sudo</code> <code>chown</code> <code>-R mysql.mysql data</code>

<code>而非</code>

<code>錯誤2的解決辦法</code>

<code># sudo vim /etc/security/limits.conf</code>

<code>末尾行增加如下資訊</code>

<code>* soft nofile 65535  </code>

<code>* hard nofile 65535  </code>

<code>普通使用者需要重新登入,才能生效,檢視指令umilit -n</code>

6、修改補充Mysql配置檔案

<code>$ vim ~</code><code>/mysql/my</code><code>.cnf </code>

<code>[mysqld]</code>

<code>添加如下行</code>

<code>user = mysql</code>

<code>port = 3306</code>

<code>server_id = 1</code>

<code>socket = </code><code>/tmp/mysql</code><code>.sock</code>

<code>basedir = </code><code>/home/ipdev/mysql/</code>

<code>datadir = </code><code>/home/ipdev/data/</code>

<code>log-error = </code><code>/home/ipdev/data/mysql-error</code><code>.log</code>

<code>pid-</code><code>file</code> <code>= </code><code>/home/ipdev/data/mysql</code><code>.pid</code>

<code>log-bin = </code><code>/home/ipdev/data/mysql-bin</code><code>.log</code>

<code>open</code><code>-files-limit = 10240</code>

<code>skip_name_resolve=1</code>

<code>innodb_file_per_table=1</code>

7、啟動Mysql服務

注意:啟動的時候也很重要,否則也會報很多錯誤

<code>[ipdev@localhost ~]$ </code><code>sudo</code> <code>sed</code> <code>-i </code><code>'s#/usr/local#/home/ipdev#g'</code> <code>~</code><code>/mysql/bin/mysqld_safe</code>

<code>[ipdev@localhost ~]$ ~</code><code>/mysql/bin/mysqld_safe</code> <code>--defaults-</code><code>file</code><code>=</code><code>/home/ipdev/mysql/my</code><code>.cnf &amp;</code>

8、配置Mysql環境變量

<code>[ipdev@localhost ~]$ </code><code>echo</code> <code>"export PATH=\$PATH:/home/ipdev/mysql/bin/"</code> <code>&gt;&gt; ~/.bash_profile</code>

<code>[ipdev@localhost ~]$ </code><code>source</code> <code>~/.bash_profile</code>

9、登陸測試

<code>[ipdev@localhost ~]$ mysql -uroot -p -e </code><code>'show databases;'</code>

<code>Enter password: </code>

<code>+--------------------+</code>

<code>| Database           |</code>

<code>| information_schema |</code>

<code>| mysql              |</code>

<code>| performance_schema |</code>

<code>| </code><code>test</code>               <code>|</code>

10、由于時間比較倉促,這裡就不在多修改服務啟動腳本了

<code>killall -9 mysqlpid | or | </code><code>kill</code> <code>mysqlpid</code>

需要注意幾個地方:

1、目錄權限問題 (比如資料存放目錄,各種日志目錄)

2、執行權限問題 (如sudo)

3、啟動服務時建議指明配置檔案的路徑

4、最大的一個問題就是初始化資料庫 預設./bin/mysqld_safe的Mysql路徑為/usr/local/mysql,但是普通使用者對/usr/local是沒有通路權限的,是以這個地方一定要替換成Mysql的目錄

本以為很簡單,但是做起來真的很麻煩

好了,今天就先到這裡!後續還會繼續補充 大家 晚安 

     本文轉自zys467754239 51CTO部落格,原文連結:http://blog.51cto.com/467754239/1586491,如需轉載請自行聯系原作者