• CentOS6.5下卸载自带的MySQL数据库安装MySQL5.6


    1)查看CentOS自带的mysql

    输入 rpm -qa | grep mysql

    mysql-libs-5.1.71-1.el6.x86_64

    2)将其自带的mysql版本全部卸载(非常重要,如不卸载,后面会产生冲突)

    rpm -e --nodeps (mysql版本号,就是上面检查到的mysql-libs-5.1.71-1.el6.x86_64)

    或者用这条命令卸载,yum -y remove mysql-libs*

    3)检查是否将自带的mysql版本卸载了 

    rpm -qa | grep mysql

    4)创建mysql的存放目录(我保存在/usr/local/mysql目录下,可以根据自己的喜好创建mysql的保存路径)

    mkdir /usr/local/mysql

    进入到mysql目录下

    cd /usr/local/mysql

    5)上传mysql到 /usr/local/mysql/ 目录下

    mysql 5.6 官网下载链接:https://cdn.mysql.com//Downloads/MySQL-5.6/MySQL-5.6.41-1.el6.x86_64.rpm-bundle.tar

    上传到 /usr/local/mysql/ 目录后查看

    ls

    MySQL-5.6.41-1.el6.x86_64.rpm-bundle.tar

    6)安装

    先解压上传的tar包

    tar -xvf MySQL-5.6.41-1.el6.x86_64.rpm-bundle.tar

    解压后会得到以下rpm安装文件:

    MySQL-client-5.6.41-1.el6.x86_64.rpm
    MySQL-devel-5.6.41-1.el6.x86_64.rpm
    MySQL-embedded-5.6.41-1.el6.x86_64.rpm
    MySQL-server-5.6.41-1.el6.x86_64.rpm
    MySQL-shared-5.6.41-1.el6.x86_64.rpm
    MySQL-shared-compat-5.6.41-1.el6.x86_64.rpm
    MySQL-test-5.6.41-1.el6.x86_64.rpm

    安装服务端(注意:服务端和客户端都要安装,否则会出错)

    rpm -ivh MySQL-server-5.6.41-1.el6.x86_64.rpm

    出现报错:

    warning: MySQL-server-5.6.41-1.el6.x86_64.rpm: Header V3 DSA/SHA1 Signature, key ID 5072e1f5: NOKEY
    error: Failed dependencies:
    libaio.so.1()(64bit) is needed by MySQL-server-5.6.41-1.el6.x86_64
    libaio.so.1(LIBAIO_0.1)(64bit) is needed by MySQL-server-5.6.41-1.el6.x86_64
    libaio.so.1(LIBAIO_0.4)(64bit) is needed by MySQL-server-5.6.41-1.el6.x86_64
    libnuma.so.1()(64bit) is needed by MySQL-server-5.6.41-1.el6.x86_64
    libnuma.so.1(libnuma_1.1)(64bit) is needed by MySQL-server-5.6.41-1.el6.x86_64
    libnuma.so.1(libnuma_1.2)(64bit) is needed by MySQL-server-5.6.41-1.el6.x86_64

    7)安装所需要的依赖,分别执行以下命令

    解决缺少perl的依赖:

    yum install -y perl

    解决缺少libaio.so.1(64bit)的依赖:

    这里使用yum install –y libaio.so.1后发现并不能解决问题,原因yum安装的并非x86_64版本,而是i686版本

    rpm -qa | grep libaio

    libaio-0.3.107-10.el6.i686

    手动下载libaio-0.3.107-10.el6.x86_64.rpm,下载地址如下:

    http://mirror.centos.org/cent...

    上传后安装

    rpm -ivh libaio-0.3.107-10.el6.x86_64.rpm

    解决缺少libnuma.so.1(64bit)依赖:

    yum install -y numactl

    再次安装执行:

    rpm -ivh MySQL-server-5.6.41-1.el6.x86_64.rpm

    。。。省略。。。

    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用户设置了随机密码,可以在 /root/.mysql_secret 文件中找到,并且移除了匿名用户,可以运行 /usr/bin/mysql_secure_installation 命令来移除自带的测试数据库,还生成了默认配置文件 /usr/my.cnf

    8)安装客户端

    rpm -ivh MySQL-client-5.6.41-1.el6.x86_64.rpm

    rpm -ivh MySQL-devel-5.6.41-1.el6.x86_64.rpm

    9)检查是否安装成功(注意MySQL字母的大小写)

    rpm -qa | grep MySQL

    MySQL-server-5.6.41-1.el6.x86_64
    MySQL-devel-5.6.41-1.el6.x86_64
    MySQL-client-5.6.41-1.el6.x86_64

    10)启动mysql服务器

    service mysql start

    出现以下提示说明安装成功!

    Starting MySQL.Logging to '/var/lib/mysql/freeradius.err'.
    . SUCCESS!

    11)查看默认生成的随机密码(最后冒号后面的就是密码)

    cat /root/.mysql_secret

    # The random password set for the root user at Sun Sep 23 07:38:04 2018 (local time): psUGhQBPUZT_LPon

    12)登陆mysql(输入上一步找到的密码)

    mysql -u root -p

    13)修改mysql登陆密码

    mysql> set password=password('密码');

    14)启动mysql

    service mysql start

    15)将mysql加到系统服务中并设置开机启动

    加入到系统服务:chkconfig --add mysql

    开机自动启动:chkconfig mysql on

    16)开启mysql的远程登录

    默认情况下mysql为安全起见,不支持远程登录mysql,所以需要设置开启  远程登录mysql的权限

    登录mysql后输入如下命令:

    mysql -u root -p

    mysql> grant all privileges on *.* to 'root' @'%' identified by '密码';

    mysql> flush privileges;

    17)开放Linux的对外访问的端口3306

    mysql默认没有开启对外访问端口3306,需要手动开启

    /sbin/iptables -I INPUT -p tcp --dport 3306 -j ACCEPT

    /etc/rc.d/init.d/iptables save     # 将修改永久保存到防火墙中

    18)初始设置mysql数据库,设置root密码,出于安全考虑,可以考虑删除匿名用户和测试数据库以及禁用远程根登录,参见下面的示例配置。

    运行 /usr/bin/mysql_secure_installation 命令

    NOTE: RUNNING ALL PARTS OF THIS SCRIPT IS RECOMMENDED FOR ALL MySQL
    SERVERS IN PRODUCTION USE! PLEASE READ EACH STEP CAREFULLY!

    In order to log into MySQL to secure it, we'll need the current
    password for the root user. If you've just installed MySQL, and
    you haven't set the root password yet, the password will be blank,
    so you should just press enter here.

    Enter current password for root (enter for none):
    OK, successfully used password, moving on...

    Setting the root password ensures that nobody can log into the MySQL
    root user without the proper authorisation.

    Set root password? [Y/n] n
    ... skipping.

    By default, a MySQL installation has an anonymous user, allowing anyone
    to log into MySQL without having to have a user account created for
    them. This is intended only for testing, and to make the installation
    go a bit smoother. You should remove them before moving into a
    production environment.

    Remove anonymous users? [Y/n] y
    ... Success!

    Normally, root should only be allowed to connect from 'localhost'. This
    ensures that someone cannot guess at the root password from the network.

    Disallow root login remotely? [Y/n] n
    ... skipping.

    By default, MySQL comes with a database named 'test' that anyone can
    access. This is also intended only for testing, and should be removed
    before moving into a production environment.

    Remove test database and access to it? [Y/n] y
    - Dropping test database...
    ... Success!
    - Removing privileges on test database...
    ... Success!

    Reloading the privilege tables will ensure that all changes made so far
    will take effect immediately.

    Reload privilege tables now? [Y/n] y
    ... Success!

     


    All done! If you've completed all of the above steps, your MySQL
    installation should now be secure.

    Thanks for using MySQL!


    Cleaning up...

    19)修改配置文件位置并做相关设置

    cp /usr/share/mysql/my-default.cnf /etc/my.cnf
    vi /etc/my.cnf
    # 做如下配置
    [client]
    port = 3306
    default-character-set=utf8
    [mysqld]
    port = 3306
    character_set_server=utf8
    character_set_client=utf8
    collation-server=utf8_general_ci

    log_error = /var/log/mysql/error.log

    # 错误日志路径自己定义,前提是目录必须存在

    lower_case_table_names=1

    # 注意 linux下mysql安装完后是默认:表名区分大小写,列名不区分大小写; 0:区分大小写,1:不区分大小写

    max_connections=1000

    # 设置最大连接数,默认为 151,MySQL服务器允许的最大连接数16384
    [mysql]
    default-character-set = utf8

    几个重要目录

    数据库目录
    /var/lib/mysql/
    配置文件
    /usr/share/mysql(mysql.server命令及配置文件)
    相关命令
    /usr/bin(mysqladmin mysqldump等命令)
    启动脚本
    /etc/rc.d/init.d/(启动脚本文件mysql的目录)

  • 相关阅读:
    我是一个垃圾程序员
    前谷歌高管给初入职场新人的14条忠告
    儿童节过完了
    两块网卡实现多台机器共享上网
    Python下载prettyloaded的swf
    关于mysql的1067与1045错误
    不使用定时器实现iframe的自适应高度
    JavaScript的大数阶乘
    两道函数式编程题
    字符串比较
  • 原文地址:https://www.cnblogs.com/opsprobe/p/9397199.html
Copyright © 2020-2023  润新知