1、MySQL简介
MySQL 是最流行的关系型数据库管理系统,由瑞典MySQL AB公司开发,目前属于Oracle公司。
MySQL所使用的SQL语言是用于访问数据库的最常用标准化语言。
MySQL由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,一般中小型网站的开发都选择MySQL作为网站数据库。
2、MySQL 安装
本教程的系统平台:CentOS release 6.6 (Final) 64位。
2.1 安装编译工具及库文件
1 | yum -y install gcc gcc-c++ make autoconf libtool-ltdl-devel gd-devel freetype-devel libxml2-devel libjpeg-devel libpng-devel openssl-devel curl-devel bison patch unzip libmcrypt-devel libmhash-devel ncurses-devel sudo bzip2 flex libaio-devel |
2.2 安装cmake 编译器
cmake 版本:cmake-3.1.1。
2.2.1 下载地址:http://www.cmake.org/files/v3.1/cmake-3.1.1.tar.gz
1 | $ wget http://www.cmake.org/files/v3.1/cmake-3.1.1.tar.gz |
2.2.2 解压安装包
1 | $ tar zxvf cmake-3.1.1.tar.gz |
2.2.3 进入安装包目录
1 | $ cd cmake-3.1.1 |
2.2.4 编译安装
1 | $ ./bootstrap |
2.3 安装 MySQL
MySQL版本:mysql-5.6.15
2.3.1 下载mysql:
http://dev.mysql.com/get/Downloads/MySQL-5.6/mysql-5.6.15.tar.gz
1 | $ wget http://dev.mysql.com/get/Downloads/MySQL-5.6/mysql-5.6.15.tar.gz |
2.3.2 解压安装包
1 | $ tar zxvf mysql-5.6.15.tar.gz |
2.3.3 进入安装包目录
1 | $ cd mysql-5.6.15 |
2.3.4 编译安装
1 | $ cmake -DCMAKE_INSTALL_PREFIX=/usr/local/webserver/mysql/ -DMYSQL_UNIX_ADDR=/tmp/mysql.sock -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_EXTRA_CHARSETS=all -DWITH_MYISAM_STORAGE_ENGINE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_MEMORY_STORAGE_ENGINE=1 -DWITH_READLINE=1 -DWITH_INNODB_MEMCACHED=1 -DWITH_DEBUG=OFF -DWITH_ZLIB=bundled -DENABLED_LOCAL_INFILE=1 -DENABLED_PROFILING=ON -DMYSQL_MAINTAINER_MODE=OFF -DMYSQL_DATADIR=/usr/local/webserver/mysql/data -DMYSQL_TCP_PORT=3306 |
2.3.5 查看mysql版本:
1 | $ /usr/local/webserver/mysql/bin/mysql --version |
3、MySQL 配置
3.1 创建mysql运行使用的用户mysql:
1 | $ /usr/sbin/groupadd mysql |
3.2 创建binlog和库的存储路径并赋予mysql用户权限
1 | $ mkdir -p /usr/local/webserver/mysql/binlog /www/data_mysql |
3.3 创建my.cnf配置文件
将/etc/my.cnf替换为下面内容
1 | $ cat /etc/my.cnf |
3.4 初始化数据库
1 | $/usr/local/webserver/mysql/scripts/mysql_install_db --defaults-file=/etc/my.cnf --user=mysql |
显示如下信息:
1 | Installing MySQL system tables...2015-01-26 20:18:51 0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option (see documentation for more details). |
3.5 创建开机启动脚本
1 | $ cd /usr/local/webserver/mysql/ |
3.6 启动mysql服务器
1 | $ service mysqld start |
1 | $ /usr/local/webserver/mysql/bin/mysql -u root -p |
1 | mysqladmin -u用户名 -p旧密码 password 新密码 |
或进入mysql命令行
1 | SET PASSWORD FOR '用户名'@'主机' = PASSWORD(‘密码'); |
创建新用户并授权:
1 | grant all privileges on *.* to 用户名@'%' identified by '密码' with grant option; |
其他命令
- 启动:service mysqld start
- 停止:service mysqld stop
- 重启:service mysqld restart
- 重载配置:service mysqld reload