centos安装mysql5.6

1.下载去mysql官方网站下载安装包

http://dev.mysql.com/downloads/mysql/5.6.html#downloads


因为centos源码属于redhat所以这里选择Red Hat, 下面根据自己系统的版本选择对应的tar包,我的系统是64位 所以选择

Red Hat Enterprise Linux 6 / Oracle Linux 6 (x86,64-bit),RPM Bundle 这个版本

下载需要有oracle账号,怎么注册这里就不描述了

2.检查是否已安装,grep的-i选项表示匹配时忽略大小写

[root@JUSHENG-WEB]#rpm -qa|grep -i mysql


可见已经安装了库文件,应该先卸载,不然会出现覆盖错误。注意卸载时使用了--nodeps选项,忽略了依赖关系:

a)卸载mysql

[root@JUSHENG-WEB]#rpm -e mysql-community-server-5.7.17-1.el6.x86_64--nodeps

[root@JUSHENG-WEB]#rpm -emysql-community-client-5.7.17-1.el6.x86_64--nodeps


b)删除mysql服务

[root@localhost local]# chkconfig --list | grep -i mysql
[root@localhost local]# chkconfig --del mysql

c)删除分散mysql文件夹

[root@localhost local]# whereis mysql 或者find / -name mysql

mysql: /usr/lib/mysql /usr/share/mysql

清空相关mysql的所有目录以及文件
rm -rf /usr/lib/mysql
rm -rf /usr/share/mysql

rm -rf /usr/my.cnf

接着还要做一件事情

#cd /var/lib 检查该目录下是否存在mysql文件夹 如果存在删掉,否者mysql不会正常安装(这个很重要)

3,将下载的文件上传到/usr/local目录下 使用

#tar -xvf MySQL-5.6.35-1.el6.x86_64.rpm-bundle.tar 命令解压 注意这里使用-zxvf的话可能会报错

gzip: stdin: not in gzip format
tar: Child returned status 1
tar: Error is not recoverable: exiting now

这个错误的大概意思是压缩文件被人为的改过名称,比如:最初压缩的并非.gz,被人为的修改了后缀,这时可以去掉后缀再解压,如:文件FMIS2600DMP.tar.gz,去掉gz后缀,再用tar -xvf 解压


解压后可以得到这7个文件,如下:

其中只有MySQL-server-5.6.35-1.el6.x86_64.rpm和MySQL-client-5.6.35-1.el6.x86_64.rpm这两个文件是我们需要的

[JUSHENG-WEB]# rpm -ivh MySQL-server-5.6.35-1.el6.x86_64.rpm


[root@JUSHENG-WEB src]# rpm -ivh MySQL-server-5.6.35-1.el6.x86_64.rpm
Preparing... ########################################### [100%]
1:MySQL-server ########################################### [100%]
2017-01-10 11:23:27 0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option (see documentation for more details).
2017-01-10 11:23:27 0 [Note] Ignoring --secure-file-priv value as server is running with --bootstrap.
2017-01-10 11:23:27 0 [Note] /usr/sbin/mysqld (mysqld 5.6.35) starting as process 3342 ...
2017-01-10 11:23:27 3342 [Note] InnoDB: Using atomics to ref count buffer pool pages
2017-01-10 11:23:27 3342 [Note] InnoDB: The InnoDB memory heap is disabled
2017-01-10 11:23:27 3342 [Note] InnoDB: Mutexes and rw_locks use GCC atomic builtins
2017-01-10 11:23:27 3342 [Note] InnoDB: Memory barrier is not used
2017-01-10 11:23:27 3342 [Note] InnoDB: Compressed tables use zlib 1.2.3
2017-01-10 11:23:27 3342 [Note] InnoDB: Using Linux native AIO
2017-01-10 11:23:27 3342 [Note] InnoDB: Using CPU crc32 instructions
2017-01-10 11:23:27 3342 [Note] InnoDB: Initializing buffer pool,size = 128.0M
2017-01-10 11:23:27 3342 [Note] InnoDB: Completed initialization of buffer pool
2017-01-10 11:23:27 3342 [Note] InnoDB: The first specified data file ./ibdata1 did not exist: a new database to be created!
2017-01-10 11:23:27 3342 [Note] InnoDB: Setting file ./ibdata1 size to 12 MB
2017-01-10 11:23:27 3342 [Note] InnoDB: Database physically writes the file full: wait...
2017-01-10 11:23:28 3342 [Note] InnoDB: Setting log file ./ib_logfile101 size to 48 MB
2017-01-10 11:23:29 3342 [Note] InnoDB: Setting log file ./ib_logfile1 size to 48 MB
2017-01-10 11:23:30 3342 [Note] InnoDB: Renaming log file ./ib_logfile101 to ./ib_logfile0
2017-01-10 11:23:30 3342 [Warning] InnoDB: New log files created,LSN=45781
2017-01-10 11:23:30 3342 [Note] InnoDB: Doublewrite buffer not found: creating new
2017-01-10 11:23:30 3342 [Note] InnoDB: Doublewrite buffer created
2017-01-10 11:23:30 3342 [Note] InnoDB: 128 rollback segment(s) are active.
2017-01-10 11:23:30 3342 [Warning] InnoDB: Creating foreign key constraint system tables.
2017-01-10 11:23:30 3342 [Note] InnoDB: Foreign key constraint system tables created
2017-01-10 11:23:30 3342 [Note] InnoDB: Creating tablespace and datafile system tables.
2017-01-10 11:23:30 3342 [Note] InnoDB: Tablespace and datafile system tables created.
2017-01-10 11:23:30 3342 [Note] InnoDB: Waiting for purge to start
2017-01-10 11:23:30 3342 [Note] InnoDB: 5.6.35 started; log sequence number 0
A random root password has been set. You will find it in '/root/.mysql_secret'.
2017-01-10 11:23:32 3342 [Note] Binlog end
2017-01-10 11:23:32 3342 [Note] InnoDB: FTS optimize thread exiting.
2017-01-10 11:23:32 3342 [Note] InnoDB: Starting shutdown...
2017-01-10 11:23:34 3342 [Note] InnoDB: Shutdown completed; log sequence number 1625977
2017-01-10 11:23:34 0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option (see documentation for more details).
2017-01-10 11:23:34 0 [Note] Ignoring --secure-file-priv value as server is running with --bootstrap.
2017-01-10 11:23:34 0 [Note] /usr/sbin/mysqld (mysqld 5.6.35) starting as process 3364 ...
2017-01-10 11:23:34 3364 [Note] InnoDB: Using atomics to ref count buffer pool pages
2017-01-10 11:23:34 3364 [Note] InnoDB: The InnoDB memory heap is disabled
2017-01-10 11:23:34 3364 [Note] InnoDB: Mutexes and rw_locks use GCC atomic builtins
2017-01-10 11:23:34 3364 [Note] InnoDB: Memory barrier is not used
2017-01-10 11:23:34 3364 [Note] InnoDB: Compressed tables use zlib 1.2.3
2017-01-10 11:23:34 3364 [Note] InnoDB: Using Linux native AIO
2017-01-10 11:23:34 3364 [Note] InnoDB: Using CPU crc32 instructions
2017-01-10 11:23:34 3364 [Note] InnoDB: Initializing buffer pool,size = 128.0M
2017-01-10 11:23:34 3364 [Note] InnoDB: Completed initialization of buffer pool
2017-01-10 11:23:34 3364 [Note] InnoDB: Highest supported file format is Barracuda.
2017-01-10 11:23:34 3364 [Note] InnoDB: 128 rollback segment(s) are active.
2017-01-10 11:23:34 3364 [Note] InnoDB: Waiting for purge to start
2017-01-10 11:23:34 3364 [Note] InnoDB: 5.6.35 started; log sequence number 1625977
2017-01-10 11:23:35 3364 [Note] Binlog end
2017-01-10 11:23:35 3364 [Note] InnoDB: FTS optimize thread exiting.
2017-01-10 11:23:35 3364 [Note] InnoDB: Starting shutdown...
2017-01-10 11:23:36 3364 [Note] InnoDB: Shutdown completed; log sequence number 1625987


A RANDOM PASSWORD HAS BEEN SET FOR THE MySQL root USER !
You will find that password in '/root/.mysql_secret'.


You must change that password on your first connect,
no other statement but 'SET PASSWORD' will be accepted.
See the manual for the semantics of the 'password expired' flag.


Also,the account for the anonymous user has been removed.


In addition,you can run:


/usr/bin/mysql_secure_installation


which will also give you the option of removing the test database.
This is strongly recommended for production servers.


See the manual for more instructions.


Please report any problems at http://bugs.mysql.com/


The latest information about MySQL is available on the web at


http://www.mysql.com


Support MySQL by buying support/licenses at http://shop.mysql.com


New default config file was created as /usr/my.cnf and
will be used by default by the server when you start it.
You may edit this file to change server settings

[root@JUSHENG-WEB]# rpm -ivh MySQL-client-5.6.35-1.el6.x86_64.rpm

[root@JUSHENG-WEB src]# rpm -ivh MySQL-client-5.6.35-1.el6.x86_64.rpm
Preparing... ########################################### [100%]
1:MySQL-client ########################################### [100%]

好了安装完毕

MySQL服务器安装之后虽然配置了相关文件,但并没有自动启动mysqld服务,需自行启动:

[root@JUSHENG-WEB src]#service mysql start

Starting MySQL.. SUCCESS!

可通过检查端口是否开启来查看MySQL是否正常启动:

root@JUSHENG-WEB src]#netstat -anp|grep 3306

tcp 00 0.0.0.0:33060.0.0.0:* LISTEN 34693/mysqld

4.登录

#mysql -uroot -p 结果无法登录,很多小伙伴们到这里就蒙了怎么没法登录mysql的root的默认密码不是空的吗 其实仔细看前面安装server的日志信息会发现5.6已经调整了这个问题,安装后它会生成一个初始密码在/root/.mysql_secret文件下

[root@JUSHENG-WEB ~]# cat /root/.mysql_secret
# The random password set for the root user at Tue Jan 10 11:23:31 2017 (local time): aGwZeky15Z53ZCGq

现在在使用密码登录看看

#mysql -uroot -paGwZeky15Z53ZCGq ok正常登录了


5.修改MySQL的root用户的密码以及打开远程连接

mysql> use mysql;
mysql> desc user;
mysql> GRANT ALL PRIVILEGES ON *.* TO root@"%" IDENTIFIED BY "root"; //为root添加远程连接的能力
mysql> update user set Password = password('root') where User='root'; //设置root用户密码
mysql> select Host,User,Password from user where User='root';
mysql> flush privileges;
mysql> exit


6.开放3306端口

#vi /etc/sysconfig/iptables 添加下面这段

-A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT


#service iptables restart重启防火墙

相关文章

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...