mysql5.6.*安装问题
解压安装
[root@devhost2-3 frms]# tar -zxvf mysql-5.7.9-linux-glibc2.5-x86_64.tar.gz
移动解压后的目录到本地软件安装目录
[root@devhost2-3 frms]# mv mysql-5.7.9-linux-glibc2.5-x86_64 /usr/local/mysql
添加mysql用户组和mysql用户
[root@devhost2-3 ~]# groupadd mysql
[root@devhost2-3 ~]# useradd -r -g mysql mysql
在添加前检查用户是否已经存在
[root@devhost2-3 ~]# groups mysql
mysql : mysql
将/usr/local/mysql目录下归属到mysql用户及mysql组
[root@devhost2-3 ~]# chown -R mysql:mysql /usr/local/mysql
启动安装
[root@devhost2-3 ~]# cd /
[root@devhost2-3 ~]# ./usr/local/mysql/scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data
----------------------------------------------------------》
执行的时候如果报错依赖包的错,例如:
[root@localhost /]# ./usr/local/mysql/scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data
FATAL ERROR: please install the following Perl modules before executing ./usr/local/mysql/scripts/mysql_install_db:
Data::Dumper
[root@localhost /]# yum install perl-Data-Dumper
其他依赖包缺少的话请自行上网查度娘
进入mysql配置文件目录
[root@devhost2-3 ~]# cd /usr/local/mysql/support-files
[root@devhost2-3 ~]# cp my-default.cnf /etc/my.cnf
复制mysql服务启动配置文件到/etc/下并重命名为my.cnf,/etc/my.cnf如存在则输入y和回车覆盖
配置文件,如果没有的话,mysql所有的参数将会是默认值
lower_case_table_names=1
character_set_server = utf8
[root@devhost2-3 ~]# cp mysql.server /etc/init.d/mysql
将mysql加入到可控制启动的服务的文件夹内,并命名mysql,即service可控制的服务名,至此可用service mysql start控制启动mysql
/etc/init.d 是/etc/rc.d/init.d的链接,在/etc/init.d添加一个文件会同步在/etc/rc.d/init.d下添加一个相同文件
[root@devhost2-3 ~]# vi /etc/init.d/mysql
进入后按键盘i进行编辑,修改如下俩值
basedir=/usr/local/mysql
datadir=/usr/local/mysql/data
保存提出
[root@devhost2-3 ~]# chkconfig --add mysql
让mysql服务加入到开机启动指令管理的服务列表中
[root@devhost2-3 ~]# chkconfig mysql on
开机自启动mysql服务
[root@devhost2-3 ~]# vi /etc/profile
配置环境变量,这个文件是每个用户登录时都会运行的环境变量设置
在最下面添加下面两个值
export MYSQL_HOME="/usr/local/mysql"
export PATH="$PATH:$MYSQL_HOME/bin"
让修改的profile文件立即生效
[root@devhost2-3 ~]# source /etc/profile
[root@devhost2-3 ~]# service mysql start
启用mysql,或者命令systemctl start mysql
[root@devhost2-3 ~]# cd /usr/local/mysql/bin/
[root@devhost2-3 ~]# ./mysqladmin -u root password '123456'
设置mysql的root用户密码,此处设成123456,此root用户与linux不是一个
[root@devhost2-3 ~]# mysql -u root -p
登陆mysql,用刚才设置的密码
-------------------------------------》
如果报如下错:
root@DB-02 ~]# mysql -u root
-bash: mysql: command not found
# ln -s /usr/local/mysql/bin/mysql /usr/bin
登录mysql以后
mysql>GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456' WITH GRANT OPTION;
允许使用用户名root密码123456从任何主机连接到mysql服务器
mysql>FLUSH PRIVILEGES;
刷新权限
mysql>exit;
退出mysql
自此可以正常使用mysql,如果大家从其他主机连不上mysql,可能是端口问题,请开放端口或关闭防火墙
在此说一下关于启动和关闭防火墙的命令:
1) 重启后生效
开启: chkconfig iptables on
关闭: chkconfig iptables off
2) 即时生效,重启后失效
开启: service iptables start
关闭: service iptables stop
centos7如上命令可能关闭不了防火墙,请使用
systemctl stop firewalld
systemctl mask firewalld