第一步:在百度输入Mysql,然后我们点击第一个链接,如下图所示。(或者是直接进入www.mysql.com)
第二步:点击上图的链接之后,我们会看到如下图所示的界面,依次点击对应选项。
第三步:进入新的界面以后选择需要的MySQL版本
第四部:选择需要的版本,安装包类型,对应的操作系统。
第五步:以编译安装为例:
由于我们是要下载适合于Linux系统的.tar.gz类型的安装包,因此我们切换一下,我们切换成"Source Code",如下图所示。
切换完之后,会看到如下图所示的界面,我们往下找,在倒数第二行有我们想要的mysql-5.7.22.tar.gz!!!我们下载就可以了。
官网:
www.mysql.com www.oracle.com
http://dev.mysql.com/doc/refman/5.7/en/linux-installation.html
Oracle MySQL、MariaDB、Percona server
Select Platform:
rpm Yum Repository mysql57-community-release-el7-9.noarch.rpm
二进制 预编译 Generic mysql-5.7.19-linux-glibc2.12-x86_64.tar.gz
源码包安装 Source Code Generic Linux mysql-5.7.19.tar.gz
版本号=3个数字+1个后缀
mysql-5.0.9-beta
alpha:新版本,新功能,大量未测试代码
beta:完整版本,所有代码已被测试,没有已知bug
rc:发布版本,稳定
MySQL安装方式
RPM安装
优点 安装简单
缺点 需要单独下载客户端和服务器;安装路径不灵活,默认路径不能修改,最致命的一台服务器只能装一个mysql
二进制包:
优点: 安装简单,可以安装到任何路径下,灵活性好;一台服务器可以安装多个mysql
缺点: 已经编译好,性能不如源码编译;不能灵活定制编译参数
源码
优点: 可根据实际环境需求定制编译参数,最灵活;一台服务器可以安装多个mysql
缺点: 安装过程较复杂,编译时间较长
rpm方式:
安装方法:
#rpm -ivh 软件包
安装目录:
/usr/bin --客户端程序和脚本
/usr/sbin --mysqld服务器程序
/var/lib/mysql --日志文件和数据文件
/usr/share/doc/packages --文档
/usr/include/mysql --头文件
/usr/lib/mysql --库文件
/usr/share/mysql --错误消息和字符集文件
/usr/share/sql-bench --基准程序(性能测试工具)
二进制方式:
安装方法:
添加mysql用户
#groupadd mysql
#useradd –g mysql mysql
切换至mysql用户,解压二进制包,建立软链
$cd /home/mysql/
$tar –xzvf /home/mysql/mysql-5.1.72-linux-i686-glibc23.tar.gz
$ln –s mysql mysql-5.1.72-linux-i686-glibc23
在数据目录下创建系统数据库和系统表(初始化)
$cd mysql
$scripts/mysql_install_db –-user=mysql
用root用户建立参数文件,更改权限
#cp support_files/my-small.cnf /etc/my.cnf
#chown mysql:mysql /etc/my.cnf
启动mysql
$bin/mysqld_safe –-user=mysql &
源码安装
先检查本地源是否可用*
安装:
1.清理安装环境:
# yum erase mariadb mariadb-server mariadb-libs mariadb-devel -y
# userdel -r mysql
# rm -rf /etc/my*
# rm -rf /var/lib/mysql rpm和二进制
#rm -rf /usr/local/mysql 源码
#CMakeCache.txt 解压包里面
# rm -rf /etc/my.cnf
2.创建mysql账户:
# useradd -r mysql -M -s /sbin/nologin
3.从官网下载.gz的源码安装包
mysql-5.7.20.tar.gz
boost_1_59_0.tar.gz
解压mysql压缩包,在解压boost安装包,把boost压缩包解压到mysql目录里面去。
4.编译安装
编译安装有一定的系统安装条件,也就时对其他包的依赖。
这时候我们就要安装一些依赖包。下面呢,我们来讲一下,这些依赖包的作用以及需要使用的版本。
1> cmake
2> make3.75
3> gcc4.4.6
4> Boost1.59.0
5> bison2.1
6> ncurses
7>ncurses
# yum -y install ncurses ncurses-devel openssl-devel bison gcc gcc-c++ make cmake
5.配置:可以写入一个脚本执行
首先需要cd到解压的mysql目录(#cd mysql-5.7.22 ),执行下面的命令
#cmake . -DWITH_BOOST=boost_1_59_0/ -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DSYSCONFDIR=/etc -DMYSQL_DATADIR=/usr/local/mysql/data -DINSTALL_MANDIR=/usr/share/man -DMYSQL_TCP_PORT=3306 -DMYSQL_UNIX_ADDR=/tmp/mysql.sock -DDEFAULT_CHARSET=utf8 -DEXTRA_CHARSETS=all -DDEFAULT_COLLATION=utf8_general_ci -DWITH_READLINE=1 -DWITH_SSL=system -DWITH_EMBEDDED_SERVER=1 -DENABLED_LOCAL_INFILE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1
[[email protected] ~]# cmake . \
-DWITH_BOOST=boost_1_59_0/ \
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \ MySQL的安装目录
-DSYSCONFDIR=/etc \ 存放 配置文件的位置 (默认可以不安装配置文件)
-DMYSQL_DATADIR=/usr/local/mysql/data \ 数据目录的存放位置,同时错误日志文件也会在这个目录
-DINSTALL_MANDIR=/usr/share/man \ 帮助文档
-DMYSQL_TCP_PORT=3306 \ 默认端口
-DMYSQL_UNIX_ADDR=/tmp/mysql.sock \ sock文件位置,用来做网络通信的,客户端连接服务器的时候会用到
-DDEFAULT_CHARSET=utf8 \ 默认字符集。字符集的支持,可以调
-DEXTRA_CHARSETS=all \ 扩展的字符集支持所有的
-DDEFAULT_COLLATION=utf8_general_ci \ 支持的utf8字符集
-DWITH_READLINE=1 \ 上下翻历史命令
-DWITH_SSL=system \ 使用私钥和证书登陆(公钥) 可以加密。 适用与长连接。坏处:速度慢
-DWITH_EMBEDDED_SERVER=1 \ 嵌入式数据库
-DENABLED_LOCAL_INFILE=1 \ 从本地倒入数据,不是备份和恢复。
-DWITH_INNOBASE_STORAGE_ENGINE=1 默认的存储引擎,支持外键
这些配置参数我偶有在下边做解释,大家一会看一下。
红字标识部分为有外网情况下使用
提示:boost也可以使用如下指令自动下载,如果不下载bost压缩包,把下面的这一条添加到配置中第二行
-DDOWNLOAD_BOOST=1/
提示一下内容标识配置成功:
– Configuring done 配置完成
– Generating done 生成完成
#make -g 数字(增加内核CPU)
# make -j 2 &&make install
6.初始化
需要先进入mysql的安装目录。
命令如下:
#cd /usr/local/mysql
# ./bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data
Ysnaf2O)>rRL
配置MySQL配置文件my.cnf
第一种:系统默认的配置文件
在5.6中常常使用源码包提供的默认配置文件,而在生产环境中一般是进行自定义配置文件(在5.7中会遇到support-files下没有my-default.cnf文件的情况,这种情况直接选择自定义配置 )
# cp support-files/my-default.cnf /etc/my.cnf
第二种:自定义配置(生产环境常用)
[root@mysql1 mysql]# vim /etc/my.cnf
[mysqld]
basedir=/usr/local/mysql 安装目录
datadir=/usr/local/mysql/data 数据存放目录
7.启动mysql
# cp support-files/mysql.server /etc/init.d/mysqld //生成mysql.server脚本(system V)
# chmod 755 /etc/init.d/mysqld(默认是755,安全起见敲一下)
# chkconfig --add mysqld // 给MySQL设置启动项
# chkconfig mysqld on //给MySQL设置开机启动
# service mysqld start // 执行启动命令
# /etc/init.d/mysqld start
# netstat -tanp | grep 3306
8.修改密码:
方法一:
#/usr/local/mysql/bin/mysqladmin -u root -p'旧密码' password '新密码'
或者
利用初始密码进入MySQL
#./bin/mysql -uroot -p'Psxf*=g/y28i'
mysql> SET PASSWORD=PASSWORD('123');
方法二:
>set password=password('123')
9.添加环境变量:
# vi ~/.bash_profile
export PATH=$PATH:/usr/local/mysql/bin
# source ~/.bash_profile
之后就可以在任何地方使用mysql命令登陆Mysql服务器:
# mysql -u root -p新密码
10.登陆mysql
# /usr/local/mysql/bin/mysql -u root -p‘123’
然后:shows databases // 查看数据库
退出:exit
11.关闭MySQL服务
#service mysqld stop
强制关闭退出mysql服务:(非常时期,非常手段)
pkill -9 mysql
重新安装MySQL的步骤:(之前安装过MySQL)
1.删除安装目录:rm -rf /usr/local/mysql
2.删除解压包目录:rm -rf ..../mysql.5.7.22----或者只删除CMakeCache.txt
3.删除mysql用户
4.删除mysql配置文件 /etc/my.cnf
一.源码安装的卸载方法:
到源码目录,如果可以运行make uninstall就可以卸载。如果没有,就直接删除。
如果是./configure --prefix指定了目录用 rm -rf 目录名 删除
[root@localhost ~]# cd /usr/local/src/mysql-5.1.45
[root@localhost mysql-5.1.45]# make uninstall
[root@localhost mysql-5.1.45]# cd ..
[root@localhost src]# rm -rf mysql-5.1.45
[root@localhost src]# cd ..
[root@localhost local]# ls
bin etc games include lib libexec mysql sbin share src web
[root@localhost local]# rm -rf mysql/
[root@localhost local]# ls
bin etc games include lib libexec sbin share src web
二.rpm方式安装的卸载方法:注意:/var/lib/mysql
查看是否安装mysql的命令
rpm -qa | grep mysql
然后 逐个使用 rpm -e mysq-* 卸载
如果出现
error: Failed dependencies:
libmysqlclient.so.10 is needed by (installed) libdbi-dbd-mysql-0.6.5-10.RHEL4.1.i386
libmysqlclient.so.10 is needed by (installed) MySQL-python-1.0.0-1.RHEL4.1.i386
libmysqlclient.so.10 is needed by (installed) MyODBC-2.50.39-21.RHEL4.1.i386
libmysqlclient.so.10 is needed by (installed) qt-MySQL-3.3.3-9.3.i386
mysqlclient10 is needed by (installed) MySQL-python-1.0.0-1.RHEL4.1.i386
mysqlclient10 = 3.23.58-4.RHEL4.1 is needed by (installed) mysqlclient10-devel-3.23.58-4.RHEL4.1.i386
时,使用 --nodeps 参数,如:
rpm -e mysqlclient10-devel-3.23.58-4.RHEL4.1 --nodeps
rpm -e mysqlclient10-3.23.58-4.RHEL4.1 --nodeps