环境:
1、操作系统:CentOS release 7
2、安装版本: mysql-5.6.44-linux-glibc2.12-x86_64.tar.gz
3、下载地址:http://dev.mysql.com/downloads/mysql/
4、下载说明:上边的下载地址是最新版的,如果想下载老版本可以点击页面中的超链接“Looking for previous GA versions?”
5、特殊说明:Linux下MySQL5.6与MySQL5.7安装方法略有不同,本文以5.6为主
安装步骤
0、卸载老版本MySQL
查找并删除mysql有关的文件
find
/ -name mysql
rm -rf
(上边查找到的路径,多个路径用空格隔开)
1、在安装包存放目录下执行命令解压文件:
tar -zxvf mysql-5.6.44-linux-glibc2.12-x86_64.tar.gz
2、删除安装包,重命名解压后的文件
rm -f mysql-5.6.44-linux-glibc2.12-x86_64.tar.gz
mv mysql-5.6.44-linux-glibc2.12-x86_64/ /home/mysql
3、添加mysql用户组和mysql用户
先检查是否有mysql用户组和mysql用户
groups mysql
若无,则添加;
groupadd mysql
useradd -r -g mysql mysql
若有,则跳过;
4、进入mysql目录更改权限
cd
mysql/
chown -R mysql:mysql ./
5、进入到mysql目录,执行添加MySQL配置的操作
cp support-files/my-medium.cnf /etc/my.cnf
或:
cp support-files/my-default.cnf /etc/my.cnf
是否覆盖?按y 回车
6、编辑/etc/my.cnf文件
vi /etc/my.cnf
# cache in MySQL. Start at 70% of total RAM for dedicated server, else 10%. # innodb_buffer_pool_size = 128M
# Remove leading # to turn on a very important data integrity option: logging # changes to the binary log between backups. # log_bin
# These are commonly set, remove the # and set as required. basedir = /home/mysql datadir = /home/mysql/data port = 3306 # server_id = ..... socket = /tmp/mysql.sock character-set-server = utf8 skip-name-resolve log-err = /home/mysql/data/error.log pid-file = /home/mysql/data/mysql.pid
# Remove leading # to set options mainly useful for reporting servers. # The server defaults are faster for transactions and fast SELECTs. # Adjust sizes as needed, experiment to find the optimal values. # join_buffer_size = 128M # sort_buffer_size = 2M # read_rnd_buffer_size = 2M
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES |
在my.cnf文件中添加或者修改相关配置,更改完成后保存退出
7、初始化数据
(在mysql/bin或者mysql/scripts下有个 mysql_install_db 可执行文件初始化数据库),进入mysql/bin或者mysql/scripts目录下,执行下面命令
./mysql_install_db --verbose --user=root --defaults-file=/etc/my.cnf --datadir=/home/mysql /data --basedir=/home/mysql --pid-file=/home/mysql /data/mysql.pid --tmpdir=/tmp
8、启动mysql
进入/home/mysql/bin目录,执行下面命令
./mysqld_safe --defaults-file=/etc/my.cnf --socket=/tmp/mysql.sock --user=root &
9、将MySQL加入Service系统服务
新开启shell中断后,进入mysql目录,执行下面命令
cp /home/mysql/support-files/mysql.server /etc/init.d/mysqld
cp /home/mysql/support-files/mysql.server /etc/rc.d/init.d/mysql
chmod 700 /etc/init.d/mysql
chkconfig --add mysqld
chkconfig --level 2345 mysqld on
chown mysql:mysql -R /home/mysql/
10、更改密码
本机访问mysql,root账户默认是没有密码的,端口号默认3306,如果需要修改root账户密码,在/home/mysql/bin目录下,执行下面命令
./mysqladmin -h 127.0.0.1 -P3306 -uroot password 'root'
11、登录
密码更改后即可登录MySQL
./bin/mysql -h127.0.0.1 -uroot -proot
登录之后将其他用户的密码也可改为root
update mysql.user set password=password('123.com') where user='mysql';
flush privileges;
12、增加远程登录权限
上一步即可本地登录,但远程登录会报错,为解决这一问题,需要本地登陆MySQL后执行如下命令
grant all privileges on *.* to root@'%' identified by 'root';
grant all privileges on *.* to mysql@'%'identified by '123.com';
flush privileges;
执行之后即可远程登录