MySQL安装分为YUM安装、源码安装和二进制安装
1操作系统
cat /etc/redhat-release
CentOS release 6.6 (Final)
uname -r
2.6.32-504.el6.x86_64
mysql版本 5.6.15
源码Mysql安装
解决依赖关系
yum -y install gcc gcc-c++ gcc-g77 autoconf automake zlib* fiex* libxml* ncurses-devel libmcrypt* libtool-ltdl-devel* bison make cmake
创建mysql用户
useradd mysql -M -s /sbin/nologin
安装
cmake . -DCMAKE_INSTALL_PREFIX=/application/mysql-5.6.15
-DMYSQL_DATADIR=/application/mysql-5.6.15/data
-DMYSQL_UNIX_ADDR=/tmp/mysql.sock
-DDEFAULT_CHARSET=utf8
-DDEFAULT_COLLATION=utf8_general_ci
-DEXTRA_CHARSETS=gbk,gb2312,utf8,ascii
-DWITH_SSL=system
-DWITH_INNOBASE_STORAGE_ENGINE=1
-DWITH_FEDERATED_STORAGE_ENGINE=1
-DWITH_BLACKHOLE_STORAGE_ENGINE=1
-DWITHOUT_EXAMPLE_STORAGE_ENGINE=1
-DWITH_FAST_MUTEXES=1
-DWITH_ZLIB=bundled
-DENABLED_LOCAL_INFILE=1
-DWITH_READLINE=1
-DWITH_EMBEDDED_SERVER=1
-DWITH_DEBUG=0
编译参数注释
-DCMAKE_INSTALL_PREFIX=/application/mysql-5.6.15 指定安装路径
-DMYSQL_DATADIR=/application/mysql-5.5.32/data 设定mysql数据文件目录
-DMYSQL_UNIX_ADDR=/tmp/mysql.sock 设定mysql.sock路径
-DDEFAULT_CHARSET=utf8 指定默认的字符集为utf8
-DDEFAULT_COLLATION=utf8_general_ci 设定默认排序规则(utf8_general_ci快速/utf8_unicode_ci准确)
-DEXTRA_CHARSETS=gbk,gb2312,utf8,ascii 启用额外的字符集类型(默认为all)
-DWITH_SSL=system 启用ssl库支持(安全套接层
-DWITH_INNOBASE_STORAGE_ENGINE=1 安装INNOBASE存储引擎
-DWITH_FEDERATED_STORAGE_ENGINE=1 安装FEDERATED存储引擎
-DWITH_BLACKHOLE_STORAGE_ENGINE=1 安装BLACKHOLE存储引擎
-DWITHOUT_EXAMPLE_STORAGE_ENGINE=1 不启用或不编译EXAMPLE存储引擎
-DWITHOUT_PARTITION_STORAGE_ENGINE=1 不启用或不编译PARTITION存储引擎
-DWITH_FAST_MUTEXES=1 启用快速互斥锁
-DWITH_ZLIB=bundled 启用libz库支持
#bundled:使用zlib与发行版捆绑在一起的库。这是默认设置。
#system:使用系统 zlib库。
-DENABLED_LOCAL_INFILE=1 启用本地数据导入支持1等同于ON 0等同OFF
-DWITH_READLINE=1 启用readline库支持(提供可编辑的命令行)
-DWITH_EMBEDDED_SERVER=1 编译嵌入式服务器支持
-DWITH_DEBUG=0 关闭DEBUG模式
make && make install
创建软连接
ln -s /application/mysql-5.6.15/ /application/mysql
拷贝配文件
\cp /tools/mysql-5.6.15/support-files/my-default.cnf /etc/my.cnf
添加环境变量
echo ‘export PATH=/application/mysql/bin:$PATH’ >>/etc/profile
source /etc/profile
数据目录授权
chown -R mysql.mysql /application/mysql/data/
chmod -R 1777 /tmp/
初始化MySQL
cd /application/mysql/scripts/
./mysql_install_db --basedir=/application/mysql/ --datadir=/application/mysql/data/ --user=mysql
复制启动脚本
cp /tools/mysql-5.6.15/support-files/mysql.server /etc/init.d/mysqld
chmod +x /etc/init.d/mysqld
/etc/init.d/mysqld start
mysqladmin -u root password ‘111111’ #更改root密码
mysql -uroot -p #有密码后的登录方式
数据库授权账号
grant all on *.* to test@"localhost" identified by "111111";
flush privileges;
MYSQL二进制安装
useradd -s /bin/nologin -M mysql
id mysql
#uid=501(mysql) gid=502(mysql) groups=502(mysql)
tar xf mysql-5.5.32-linux2.6-x86_64.tar.gz
cp -r mysql-5.5.32-linux2.6-x86_64/ /application/
ln -s /application/mysql-5.5.32-linux2.6-x86_64/ /application/mysql
ls -l /application/ #查看目录下的软连接
#在非一体的LNMP环境(即Nginx和MySQL不在一台机器上),编译PHP环境时,也是需要MySQL数据库环境的,但PHP5.3版本以上,内置了PHP需要的MySQL程序,因此对于此类版本
就不需要再Nginx服务器上安装MySQL软件了。只需在编译安装PHP时加上–with-mysql=mysqlnd 。
cd mysql
ll support-files/*.cnf #support-files/下有MySQL各种配置样例。
#配置文件模板对硬件要求从低到高一次为
#my-medium.cnf >> my-small.cnf >> my-large.cnf >> my-huge.cnf >> my-innodb-heavy-4G.cnf
/bin/cp support-files/my-small.cnf /etc/my.cnf
mkdir -p /application/mysql/data #建立MySQL数据文件目录
chown -R mysql:mysql /application/mysql/ #授权mysql用户管理MySQL安装目录
初始化MySQL数据库文件
5.5 5.6版本初始化命令
/application/mysql/scripts/mysql_install_db --basedir=/application/mysql --data=/application/mysql/data/ --user=mysql
提示有如下OK,表示初始化成功。
#Installing MySQL system tables…
#OK
#Filling help tables…
#OK
拷贝MySQL启动脚本到/etc/init.d/
cp /application/mysql/support-files/mysql.server /etc/init.d/mysqld
chmod +x /etc/init.d/mysqld
因为MySQL的默认安装目录是/usr/local/mysql,所有启动脚本里是/usr/local/mysql的路径都需要替换。命令如下:
sed -i ‘s#/usr/local/mysql#/application/mysql#g’ /application/mysql/bin/mysqld_safe /etc/init.d/mysqld
/etc/init.d/mysqld start
#也可以使用:
/application/mysql/bin/mysqld_safe --user=mysql & #&符号表示MySQL后台运行
检查MySQL是否启动 MySQL启动端口3306
netstat -anptul |grep mysql
查看MySQL错误日志
tail -100 /application/mysql/data/VM-10-125-149-16.err
添加mysqld服务让chkconfig管理
chkconfig --add mysqld
chkconfig mysqld on
添加到全局变量
echo ‘export PATH=/application/mysql/bin:$PATH’ >> /etc/profile
. /etc/profile 或 source /etc/profile
更改root密码
mysqladmin -u root password ‘111111’
mysql -uroot -p