#环境准备
groupadd mysql
useradd -u603 -g mysql mysql
passwd mysql
#此处输入密码
mkdir -p /usr/local/mysql
mkdir -p /data/mysql
chown -R mysql:mysql /usr/local/mysql
chown -R mysql:mysql /data/mysql
#给mysql用户配置环境变量,root用户配置内容一样,放在/etc/profile
su - mysql
vi .bash_profile
####文件中内容
MYSQL_HOME=/usr/local/mysql
export MYSQL_HOME
PATH=$PATH:$HOME/bin:$MYSQL_HOME/bin
export PATH
. .bash_profile
#压缩包上传到/software
exit //退出mysql用户
cd /software
tar -zvxf mysql-5.7.17-linux-glibc2.5-x86_64.tar.gz
cd mysql-5.7.17-linux-glibc2.5-x86_64
mv * /usr/local/mysql
chown -R mysql:mysql /usr/local/mysql
#my-default.cnf 在mysql/support-files目录下
cp my-default.cnf /etc/my.cnf
vi my.cnf
##############
[mysql]
default-character-set=utf8
[client]
socket=/var/lib/mysql/mysql.sock
[mysqld]
default-storage-engine=INNODB
character-set-server=utf8
port=3306
datadir=/data/mysql
#删除重复的
##################
cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql
vi /etc/init.d/mysql
##############
#将下面的路径更改至文件中
basedir=/usr/local/mysql
datadir=/data/mysql
##############
#初始化在.mysql/bin目录下
./mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/data/mysql
#mysql的root用户生成一个临时密码,一定要记住这个临时密码yQg9ozZ61(kO
kO1tbJN0Ai#9
#给数据库加密
./mysql_ssl_rsa_setup --datadir=/data/mysql
#启动服务
service mysql start
如果提示权限不足
chmod a+wrx /usr/local/mysql/bin/mysqld
如果上面命令行启动失败,使用下面命令
/etc/init.d/mysql start
如果提示权限不足
chmod a+wrx /etc/init.d/mysql
#########一堆错误,看/var/log/mysqld.log里面的内容,大概有这么几个
#Could not create unix socket lock file /var/lib/mysql/mysql.sock.lock.
mkdir -p /var/lib/mysql
chown -R mysql:mysql /var/lib/mysql
#Can't create/write to file '/var/run/mysqld/mysqld.pid' (Errcode: 13 - Permission denied)
mkdir -p /var/run/mysqld
chown -R mysql:mysql /var/run/mysqld
#ERROR 2002 (HY000): Can’t connect to local mysql server through socket ‘/tmp/mysql.sock’错误导致无法启动
ln -s /tmp/mysql.sock /var/lib/mysql/mysql.sock
登录
/usr/local/mysql/bin/mysql -uroot p
enter password:>
#登录之后
set password=password('root');
grant all privileges on *.* to root@'%' identified by 'root';
flush privileges;
#开放3306端口,需在root用户下操作
iptables -I INPUT -p tcp --dport 3306 -j ACCEPT
iptables -A INPUT -p tcp --dport 3306 -j ACCEPT
#保存端口设置,以免关机失效
service iptables save
#开启防火墙
service iptables start
#查看3306端口是否开放
iptables -L -n
#外部可以访问成功
#外部查看是否可以访问端口
telnet ip 端口 查看是否开放端口
开启binlog日志
在my.cnf中加入
server-id=1
log-bin=/data/mysql/mysql-bin