mysql的編譯安裝

來源:互聯網
上載者:User

標籤:mysql

1、下載

ftp://mirror.switch.ch/mirror/mysql/Downloads/MySQL-5.5/mysql-5.5.36.tar.gzftp://mirror.switch.ch/mirror/mysql/Downloads/MySQL-5.5/mysql-5.5.36.tar.gz.md5

2、建立mysql資料庫目錄

2.1、建立分區

添加一塊硬碟

# fdisk -l    #查看所有裝置的分區表資訊# fdisk /dev/sdbCommand (m for help): nCommand action   e   extended   p   primary partition (1-4)pPartition number (1-4): 1First cylinder (1-2610, default 1): Using default value 1Last cylinder, +cylinders or +size{K,M,G} (1-2610, default 2610): +5G         Command (m for help): tSelected partition 1Hex code (type L to list codes): 8eChanged system type of partition 1 to 8e (Linux LVM)Command (m for help): nCommand action   e   extended   p   primary partition (1-4)pPartition number (1-4): 2First cylinder (655-2610, default 655): Using default value 655Last cylinder, +cylinders or +size{K,M,G} (655-2610, default 2610): +5GCommand (m for help): tPartition number (1-4): 2Hex code (type L to list codes): 8eChanged system type of partition 2 to 8e (Linux LVM)Command (m for help): pDisk /dev/sdb: 21.5 GB, 21474836480 bytes255 heads, 63 sectors/track, 2610 cylindersUnits = cylinders of 16065 * 512 = 8225280 bytesSector size (logical/physical): 512 bytes / 512 bytesI/O size (minimum/optimal): 512 bytes / 512 bytesDisk identifier: 0xba23b53e   Device Boot      Start         End      Blocks   Id  System/dev/sdb1               1         654     5253223+  8e  Linux LVM/dev/sdb2             655        1308     5253255   8e  Linux LVMCommand (m for help): wThe partition table has been altered!Calling ioctl() to re-read partition table.Syncing disks.

2.2、建立邏輯卷

# pvcreate /dev/sdb{1,2}        #建立物理卷  Physical volume "/dev/sdb1" successfully created  Physical volume "/dev/sdb2" successfully created# vgcreate myvg /dev/sdb{1,2}        #建立卷組  Volume group "myvg" successfully created# lvcreate -L 10G -n mylv myvg  Logical volume "mylv" created        #建立邏輯卷,-L 指定大小,-n 指定邏輯卷的名稱# lvs           #產看lv  LV   VG   Attr       LSize  Pool Origin Data%  Meta%  Move Log Cpy%Sync Convert  mylv myvg -wi-a----- 10.00g

2.3、格式化邏輯卷

# mkfs.ext4 -L Mydata /dev/myvg/mylv     -L 指定卷標

2.4、將邏輯卷掛載到/mydata

mkdir /mydata# vim /etc/fstabLABEL=Mydata            /mydata                 ext4    defaults        0 0# mount -t ext4 /dev/myvg/mylv /mydata

2.5、建立mysql使用者,建立mysql資料目錄/mydata/data且其屬主、屬組均為mysql

# useradd -r mysql# mkdir /mydata/data# chown -R mysql:mysql /mydata/data/       # -R 遞迴修改# df -lh /mydata/data/            #只顯示檔案系統的相關資訊Filesystem            Size  Used Avail Use% Mounted on/dev/mapper/myvg-mylv                      9.8G   23M  9.2G   1% /mydata


3、編譯安裝mysql

3.1、mysql編譯安裝選項說明

在下表中,“CMAKE_INSTALL_PREFIX”的值表示的是安裝根目錄,其他參數值的路徑都是相對於根目錄的,當然你也可以直接使用絕對路徑,具體如下:

參數值說明                                               CMak選項

安裝根目錄                                               -DCMAKE_INSTALL_PREFIX=/usr

mysqld目錄                                               -DINSTALL_SBINDIR=sbin

資料存放區目錄                                   -DMYSQL_DATADIR=/mydata/data

設定檔(my.cnf)目錄                       -DSYSCONFDIR=/etc/mysql

外掛程式目錄                                         -DINSTALL_PLUGINDIR=lib64/mysql/plugin

手冊檔案目錄                                   -DINSTALL_MANDIR=share/man

共用資料目錄                                   -DINSTALL_SHAREDIR=share

Library庫目錄                                  -DINSTALL_LIBDIR=lib64/mysql

Header安裝目錄                              -DINSTALL_INCLUDEDIR=include/mysql

資訊文檔目錄                                   -DINSTALL_INFODIR=share/info

3.2、安裝mysql

# tar -xvf mysql-5.5.36.tar.gz# cd mysql-5.5.36# cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/mydata/data     -DSYSCONFDIR=/etc  -DWITH_INNOBASE_STORAGE_ENGINE=1       -DWITH_ARCHIVE_STORAGE_ENGINE=1  -DWITH_BLACKHOLE_STORAGE_ENGINE=1     -DWITH_READLINE=1 -DWITH_SSL=system -DWITH_ZLIB=system -DWITH_LIBWRAP=0     -DMYSQL_UNIX_ADDR=/tmp/mysql.sock -DDEFAULT_CHARSET=utf8      -DDEFAULT_COLLATION=utf8_general_ci# make# make install

3.3 、修改mysql安裝目錄的屬主和屬組屬主為root,屬組mysql

# cd /usr/local/mysql/# chown -R .mysql .        #屬主.屬組,屬主不改,所以省略    後面的.表示目前的目錄

3.4、為mysql提供住設定檔

# cp support-files/my-small.cnf  /etc/my.cnf# vim /etc/my.cnfdatadir = /mydata/data

3.5、為mysql提供sysv服務指令碼

# cp support-files/mysql.server /etc/rc.d/init.d/mysqld# chmod +x /etc/rc.d/init.d/mysqld

3.6、添加至服務列表

# chkconfig  --add mysqld        #開啟指定的服務程式# chkconfig --list mysqld        #列出chkconfig所知道的所有服務mysqld         0:off1:off2:on3:on4:on5:on6:off

3.7、添加mysql的滿尋找命令

# vim /etc/man.config   MANPATH /usr/local/mysql/man

3.8、輸出mysql的標頭檔至系統標頭檔路徑/usr/include

# ln -sv /usr/local/mysql/include/ /usr/include/mysql

3.9、輸出mysql的庫檔案到系統庫尋找路徑

# echo  ‘/usr/local/mysql/lib‘ > /etc/ld.so.conf.d/mysql.conf # ldconfig -v | grep mysql

3.10、改PATH環境變數,讓系統可以直接使用mysql的相關命令

# echo ‘export PATH=/usr/local/mysql/bin:$PATH‘ > /etc/profile.d/mysqld.sh# source /etc/profile# echo $PATH

3.11、初始化資料庫

# scripts/mysql_install_db --user=mysql --datadir=/mydata/data

3.12、啟動資料庫並測試

# service mysqld startStarting MySQL..    [  OK  ]


4、mysq選項

-u : 使用者名稱-p : 密碼-D : 預設開啟的資料庫

5、登入測試

# mysql -uroot -p -D mysql   #登入資料庫Enter password: ERROR 1045 (28000): Access denied for user ‘root‘@‘localhost‘ (using password: YES)

註:當時輸入了密碼,所以報錯了,但是不是道如果不輸入密碼會不會報錯

解決方案:

1、vim /etc/my.cnf,在最後一行添加“skip-grant-tables”

2、重啟MySQL服務    service mysql restart

3、在命令列中輸入“mysql -uroot -p”(不輸入密碼),斷行符號即可進入資料庫

4、執行“use mysql;”才能使用mysql資料庫

5、執行“set password for [email protected]=password(‘mysql‘);”(修改root的密碼)

6、開啟MySQL目錄下的my.ini檔案,刪除最後一行的“skip-grant-tables”,儲存並關閉檔案

7、重啟MySQL服務

8、在命令列中輸入“mysql -uroot -prootadmin”

mysql> SELECT host,user,password FROM user;ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ‘SELECT host,user,passwd FROM user‘ at line 2        #如果沒有執行“use mysql;”命令,就會顯示錯誤了mysql> use mysql;mysql> SELECT host,user,password FROM user;+--------------+------+-------------------------------------------+| host         | user | password                                  |+--------------+------+-------------------------------------------+| localhost    | root | *E74858DB86EBA20BC33D0AECAE8A8108C56B17FA || werewolf.com | root |                                           || 127.0.0.1    | root |                                           || ::1          | root |                                           || localhost    |      |                                           || werewolf.com |      |                                           |+--------------+------+-------------------------------------------+6 rows in set (0.00 sec)


本文出自 “三哥” 部落格,請務必保留此出處http://523958392.blog.51cto.com/9871195/1617334

mysql的編譯安裝

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.