# 常規方式編譯安裝MySQL
此種方式適合所有MySQL5.0.xx-5.1.xx產品系列,是最常規的編譯方式。
常規方式編譯安裝MySQL就是延續早起MySQL的3部曲安裝方式,即
```
./configure
make
make install
```
## 添加用戶
```
useradd mysql -s /sbin/nologin
```
## 必要軟件包
```
yum -y install gcc gcc-c++ gcc-g77 autoconf automake zlib* fiex* libxml* ncurses-devel libmcrypt* libtool-ltdl-devel* make cmake curl freetype libjpeg-turbo libjpeg-turbo-devel openjpeg-libs libpng gd ncurses
```
## 生產場景的具體命令參數為:
```
./configure \
--prefix=/usr/local/mysql \
--with-unix-socket-path=/var/lib/mysql/mysql.sock \
--localstatedir=/usr/local/mysql/data \
--enable-assembler \
--enable-thread-safe-client \
--with-mysqld-user=mysql \
--with-bid-tables \
--with-debtg \
--with-pthread \
--with-extra-charsets=complex \
--with-readline \
--with-ssl \
--with-embedded-server \
--enable-local-infile \
--with-plugins=partition,innobase \
--with-mysqld-ldflags=-all-static \
--with-client-ldflags=-all-static \
```
上面的編譯完成后,執行下面的命令。
```
make && make install
```
## 改變目錄所有者
```
chown -R mysql.mysql /usr/local/mysql
```
## 初始化數據庫
```
/usr/local/mysql/bin/mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data
```
## 注冊為服務
```
cd /usr/local/src/mysql-5.1.59/support-files
cp mysql.server /etc/rc.d/init.d/mysqld
#使用默認配置文件
cp my-small.cnf /etc/my.cnf
#讓chkconfig管理mysqld服務
chkconfig --add mysqld
#開機啟動
chkconfig mysqld on
```
## 啟動MySQL服務
```
service mysqld start
```
將mysql的bin加入到path中
```
cd ~
#把path添加到當前用戶目錄的bashrc中,如果需要全局設定,請修改`/etc/profile` vi .bashrc #加入以下內容
PATH=/usr/local/mysql/bin:$PATH
source /etc/profile
```
## 修改MySQL用戶密碼
```
mysqladmin -uroot password 'aaaaaa' # 在bash命令行執行`
```
## 改變編碼,防止亂碼
```
SHOW VARIABLES LIKE 'character%'
```
* 修改mysql的my.cnf文件
```
[client]
default-character-set=utf8
[mysqld]
character-set-server=utf8
pid-file=/var/lib/mysql/mysqld.pid
[mysql]
default-character-set=utf8
[mysqld_safe]
log-error=/var/lib/mysql/mysql_error.err
```
- 寫在前面
- MySQL的使用
- MySQL多表同時刪除方案
- MySQL跨表、多表更新SQL語句總結
- MySQL存儲引擎
- 安裝
- 常規方式編譯安裝MySQL
- 采用cmake方式編譯安裝MySQL
- 使用rpm包安裝MySQL
- 使用yum方式安裝MySQL
- 采用二進制方式免編譯安裝MySQL
- 多實例的安裝
- 什么是多實例
- 多實例的作用、問題以及應用場景
- 多實例安裝01【推薦】
- 多實例官方安裝方案02
- 啟動、用戶和權限管理
- 單實例MySQL的啟動和關閉的方法
- 設置及修改MySQL root用戶密碼
- 找回丟失的MySQL root用戶密碼
- 創建MySQL用戶及用戶權限管理
- 基礎命令的操作
- MySQL庫和表相關操作
- MySQL中的索引操作
- MySQL常用命令
- MySQL的錯誤代碼
- MySQL復習秘籍
- 備份與恢復
- 備份
- 恢復
- mysqlbinlog命令
- 服務日志
- 主從復制
- 主從復制部署配置問題匯總
- 主從復制讀寫分離
- 災難恢復
- 配置phpmyadmin連接多實例MySQL
- 其他相關
- Sphinx實驗
- 中文分詞技術
- MySQL語句大全
- 用戶創建、權限、刪除
- 數據庫與表顯示、創建、刪除
- 表復制及備份還原
- 數據庫表中數據操作
- 修改表的列與表名
- 修改表中的數據
- 查詢表
- 日志
- 批量修改Mysql表引擎為InnoDB的方法
- 數據庫抽象層 PDO
- PDO對象常用方法
- PDO 事務處理
- PDO 與 MySQLi 二者效率簡單比較
- 大小寫敏感性 lower_case_table_names
- CentOS7安裝MySQL5.7密碼查看與修改