centos 7 mysql 安装

1、下载安装包 mysql-5.6.31-linux-glibc2.5-x86_64.tar.gz

wget -c http://mirrors.sohu.com/mysql/MySQL-5.6/mysql-5.6.31-linux-glibc2.5-x86_64.tar.gz -P /usr/local/src --progress=bar
或者详细参数名方式
wget --continue http://mirrors.sohu.com/mysql/MySQL-5.6/mysql-5.6.31-linux-glibc2.5-x86_64.tar.gz --directory-prefix=/usr/local/src --progress=bar


wget是一个从网络上自动下载文件的自由工具,它支持HTTP、HTTPS和FTP协议。
-c : 接着下载没下载完的文件,允许断点续传,对应的详细参数名是 --continue
-P : 将文件保存到指定目录,对应的详细参数名是 --directory-prefix
--progress : 没有参数名缩写格式,指定下载进度条的形式有 dot 和 bar(默认)两种


/usr/local/src是用户存放源码程序的位置
但其实这一版mysql不需要cmake再make和make install编译源代码安装,直接安装即可

2、卸载系统自带的Mariadb

[root@localhost~]# rmp -qa|grep mariadb //查询出已安装的mariadb
[root@localhost~]# pm -e --nodeps 文件名 //一一卸载

3、删除etc目录下的my.cnf文件

[root@localhost~]# rm /etc/my.cnf

4、执行安装mysql_install_db时需要先安装perl-Module-Install.noarch

yum install -y perl-Module-Install.noarch

下面是安装的步骤

cd /usr/local/src
解压缩文件到当前文件夹
tar -zxvf mysql-5.6.31-linux-glibc2.5-x86_64.tar.gz

cd ../

将mv /usr/local/src/下的mysql-5.6.31-linux-glibc2.5-x86_64移动到/usr/local/下并重命名为mysql

mv /usr/local/src/mysql-5.6.31-linux-glibc2.5-x86_64/usr/local/mysql


新建组mysql加入系统,为mysql服务添加组和用户,建立用户和组为了安全起见,不让mysql服务操作本身用到的文件以外的文件,所以最好新建linux用户安装mysql
groupadd mysql


增加mysql这个用户,作为系统账号,同时添加到mysql组理,主目录是/usr/local/mysql
useradd -r -g mysql mysql -d /usr/local/mysql

设置mysql用户的密码,设置密码时输入的密码不可见,这里设为123456,回车确认
passwd mysql


将/usr/local/mysql目录下归属到mysql用户及mysql组
chown -R mysql:mysql /usr/local/mysql
在etc下新建配置文件my.cnf

[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8
socket=/var/lib/mysql/mysql.sock
[mysqld]
skip-name-resolve
#设置3306端口
port = 3306
socket=/var/lib/mysql/mysql.sock
# 设置mysql的安装目录
basedir=/usr/local/mysql
# 设置mysql数据库的数据的存放目录
datadir=/usr/local/mysql/data
# 允许最大连接数
max_connections=200
# 服务端使用的字符集默认为8比特编码的latin1字符集
character-set-server=utf8
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
lower_case_table_names=1
max_allowed_packet=16M

进入安装mysql软件目录
cd /usr/local/mysql

chown -R mysql:mysql ./   修改当前目录拥有者为mysql用户

chown -R mysql:mysql data 修改当前data目录拥有者为mysql用户


yum install libaio* //自动安装这两个包


script/mysql_install_db --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --user=mysql --ldata=/var/lib/mysql // 安装数据库


授予my.cnf的最大权限
[root@localhost mysql]# chown 777 /etc/my.cnf

复制启动脚本到资源目录
[root@localhost mysql]# cp ./support-files/mysql.server /etc/rc.d/init.d/mysqld

增加mysqld服务控制脚本执行权限
[root@localhost mysql]# chmod +x /etc/rc.d/init.d/mysqld

将mysqld服务加入到系统服务
[root@localhost mysql]# chkconfig --add mysqld

检查mysqld服务是否已经生效

[root@localhost mysql]# chkconfig --list mysqld

启动msql(停止mysqld服务:service mysqld stop)

[root@localhost mysql]# service mysqld start


将mysql的bin目录加入PATH环境变量,编辑/etc/profile文件
[root@localhost mysql]# vi /etc/profile

在文件最后添加如下信息:
[root@localhost mysql]# export PATH=$PATH:/usr/local/mysql/bin


执行下面的命令使所做的更改生效:
[root@localhost mysql]# . /etc/profile

以root账户登陆mysql,默认是没有密码

[root@localhost mysql]# mysql -u root -p

设置root账户密码 注意下面的you password改成你的要修改的密码

[root@localhost mysql]# use mysql
[root@localhost mysql]# update user set password=password('you password') where user='root' and host='localhost';

设置远程主机登录(我用的是Navicat)注意下面的your username 和 your password改成你需要设置的用户和密码

[root@localhost mysql]# GRANT ALL PRIVILEGES ON *.* TO 'your username'@'%' IDENTIFIED BY 'your password' WITH GRANT OPTION;



查询是否开启3306端口
[root@localhost mysql]# firewall-cmd --query-port=3306/tcp


开启3306端口
[root@localhost mysql]# firewall-cmd --zone=public --add-port=3306/tcp --permanent

防火墙重加载生效
firewall-cmd --reload

注意

script/mysql_install_db --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --user=mysql -- ldata=/var/lib/mysql

报下面的cyowu

Installing MySQL system tables..../bin/mysqld: error while loading shared libraries: libaio.so.1: cannot open shared object file: No such file or directory

出现下面情况:
linux libaio.so.1: cannot open shared object file: No such file or directory
缺少安装包libaio和libaio-devel.
命令行
yum install libaio* //自动安装这两个包

参考资源 http://www.cnblogs.com/dreamhome/p/4716425.html http://www.2cto.com/os/201510/445931.html http://www.cnblogs.com/kreo/p/4392090.html http://www.cnblogs.com/ycsfwhh/archive/2012/08/07/2626597.html

相关文章

linux下开机自启: 在/etc/init.d目录下新建文件elasticsear...
1、因为在centos7中/etc/rc.d/rc.local的权限被降低了,所以...
最简单的查看方法可以使用ls -ll、ls-lh命令进行查看,当使用...
ASP.NET Core应用程序发布linux在shell中运行是正常的。可一...
设置时区(CentOS 7) 先执行命令timedatectl status|grep &...
vim /etc/sysconfig/network-scripts/ifcfg-eth0 B...