1 、安装依赖包
yum install ncurses-devel libaio-devel -y rpm -qa ncurses-devel libaio-devel yum install cmake –y
2 、添加用户并解压软件
useradd -s /sbin/nologin -M mysql id mysql cd /home/dadong/tools/ tar xf mysql-5.6.34.tar.gz cd mysql-5.6.34
说明:MySQL事先下载好,传到/home/dadong/tools/下面并解压。出于安全考虑,需要创建一个组名为mysql的用户组,然后再创建一个属于该用户组的系统用户mysql,该系统用户的作用是用来安装和运行MySQL服务。
3、 cmake编译
cmake . -DCMAKE_INSTALL_PREFIX=/application/mysql-5.6.34 -DMYSQL_DATADIR=/application/mysql-5.6.34/data -DMYSQL_UNIX_ADDR=/application/mysql-5.6.34/tmp/mysql.sock -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_EXTRA_CHARSETS=all -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_FEDERATED_STORAGE_ENGINE=1 -DWITH_BLACKHOLE_STORAGE_ENGINE=1 -DWITHOUT_EXAMPLE_STORAGE_ENGINE=1 -DWITH_ZLIB=bundled -DWITH_SSL=bundled -DENABLED_LOCAL_INFILE=1 -DWITH_EMBEDDED_SERVER=1 -DENABLE_DOWNLOADS=1 -DWITH_DEBUG=0
注意:从mysql5.5版本开始,源码安装mysql需要使用到 cmake 命令。
4 、编译安装
make && make install && cd ..
注意:请提前加大VM虚拟机硬件的内存,这样编译时候会更快,最好设置2GB以上的内存。此过程大约20分钟,请耐心等待。
5 、建立软连接
[root@DB02 mysql-5.6.34]# cd /application/ [root@DB02 application]# ls mysql mysql-5.6.34 [root@DB02 application]# ln -s /application/mysql-5.6.34/ /application/mysql
6、 复制启动文件
cp support-files/my*.cnf /etc/my.cnf
注意:复制/application/mysql-5.6.34下面的配置文件到/etc下
/etc/my.cnf 文件配置:
一般情况下,你不需要修改该配置文件,该文件默认配置如下: [mysqld] datadir=/var/lib/mysql socket=/var/lib/mysql/mysql.sock [mysql.server] user=mysql basedir=/var/lib [safe_mysqld] err-log=/var/log/mysqld.log pid-file=/var/run/mysqld/mysqld.pid 在配置文件中,你可以指定不同的错误日志文件存放的目录,一般你不需要改动这些配置。如将下面的这些内容放入/etc/my.cnf开头,可以登录省略密码 [client] #<==客户端模块标签。 user=root #<==用户参数及密码。 password=dadong123 #<==密码参数及密码。
7 、初始化
/application/mysql/scripts/mysql_install_db --basedir=/application/mysql/ --datadir=/application/mysql/data --user=mysql
数据库安装完毕要进行一些初始化,生成一些默认信息,数据库信息。
初始化后的配置: 1.更改默认账号和密码: mysql初始化后会生成5个空密码的用户: 3个root账号: root@127.0.0.1 root@localhost root@HOSTNAME 2个匿名账号: “@localhost ”@HOSTNAME 删除匿名用户,给root用户设置密码。 2.启用二进制日志和独立表空间 二进制日志: 服务启动时指定参数--log_bin=mysql-bin和--binlog_format=MIXED 独立表空间: mysql>set global innodb_file _per_table=1
8 、授权MySQL组
chown -R mysql.mysql /application/mysql/ cp support-files/mysql.server /etc/init.d/mysqld chmod 700 /etc/init.d/mysqld
9 、设置密码:
Mysql安装成功后,默认的root用户密码为空,你可以使用以下命令来创建root用户的密码: [root@host]# mysqladmin -u root password ‘dadong123‘ 现在你可以通过以下命令来连接到Mysql服务器: [root@host]# mysql -u root -p Enter password:******* 注意:在输入密码时,密码是不会显示了,你正确输入即可。
10、 启动MySQL
chkconfig mysqld on chkconfig --list mysqld /etc/init.d/mysqld start netstat -lntup|grep 330
11、 优化启动步骤
echo ‘PATH=/application/mysql/bin/:$PATH‘ >>/etc/profile tail -1 /etc/profile source /etc/profile echo $PATH mysql
11.1 数据库基本优化---清理用户和无用数据库:
清理用户及无用数据库(基本优化) select user,host from mysql.user; drop user ‘‘@‘db02‘; drop user ‘‘@‘localhost‘; drop user ‘root‘@‘db02‘; drop user ‘root‘@‘::1‘; select user,host from mysql.user; drop database test; show databases; ##################
常见问题:
tail -100 /application/mysql/data/db02.err 故障:ERROR! The server quit without updating PID file 1.权限.chown -R mysql.mysql 2.killall mysqld 3.重新初始化. 4.运行1年了,出问题(非法关机或者关数据库).