• CentOS7下通过rpm方式安装MySQL及插入中文问题解决 [原创]


    一 CentOS下通过rpm方式安装MySQL 

    CentOS版本:CentOS-7

    MySQL版本:MySQL-5.6.22

    在网上搜了一下,Linux下安装MYSQL有三种方式:

    1) 通过yum命令在线下载安装

    2) 下载离线rpm安装包安装

    3) 下载源码编译安装

    方式1不打算用,因为我们大部分项目服务器是不能直接上Internet的,网上关于在线安装的教程很多,方式3对于只要应用MYSQL的人来说没必要多此一举。

    1. 解压下载的zip包,会发现有以下几个rpm包:

    MySQL-client-advanced-5.6.22-1.el7.x86_64.rpm

    MySQL-devel-advanced-5.6.22-1.el7.x86_64.rpm

    MySQL-embedded-advanced-5.6.22-1.el7.x86_64.rpm

    MySQL-server-advanced-5.6.22-1.el7.x86_64.rpm

    MySQL-shared-advanced-5.6.22-1.el7.x86_64.rpm

    MySQL-shared-compat-advanced-5.6.22-1.el7.x86_64.rpm

    MySQL-test-advanced-5.6.22-1.el7.x86_64.rpm

    2. 卸载MariaDB

    如果直接点击rpm包安装会得到错误提示。因为CentOS的默认数据库已经不再是MySQL了,而是MariaDB,为什么呢?

    MariaDB数据库管理系统是MySQL的一个分支,主要由开源社区在维护,采用GPL授权许可。开发这个分支的原因之一是:甲骨文公司收购了MySQL后,有将MySQL闭源的潜在风险,因此社区采用分支的方式来避开这个风险。MariaDB的目的是完全兼容MySQL,包括API和命令行,使之能轻松成为MySQL的代替品。

    查看当前安装的mariadb包:

    [root@bogon 桌面]# rpm -qa | grep mariadb

    将它们统统强制性卸载掉:

    [root@bogon 桌面]# rpm -e --nodeps mariadb-libs-5.5.35-3.el7.x86_64

    [root@bogon 桌面]# rpm -e --nodeps mariadb-5.5.35-3.el7.x86_64

    [root@bogon 桌面]# rpm -e --nodeps mariadb-server-5.5.35-3.el7.x86_64

    wps9791.tmp

    3. 安装MYSQL

    双击下面三个包进行自动安装:

    MySQL-server-advanced-5.6.22-1.el7.x86_64.rpm

    MySQL-client-advanced-5.6.22-1.el7.x86_64.rpm

    MySQL-devel-advanced-5.6.22-1.el7.x86_64.rpm(可以不安装)

    提示:其实第二个包devel我也不知道是干什么的,也不知道是不是必须的(上网搜了一下应该不是必须的),没有测试是否必须就已经点来装上了,也不想花时间去测试是否必须了,有测试过的朋友麻烦留言告知。

    先将mysql-rpm包传到虚拟机上(使用xmanager工具)

    wps97A2.tmp

    注意:必须使用root用户登陆,使用rpm -i命令安装rpm,先安装mysql-server-rpm,再安装mysql-client-rpm。

    1).安装mysql-server-rpm

    wps97B2.tmp

    wps97B3.tmp

    2).使用cat /root/.mysql_secret查看密码,红框中的为mysql的root用户的随机密码。

    wps97B4.tmp

    3).再安装mysql-client-rpm

    wps97B5.tmp

    4. 启动MYSQL

    [root@bogon 桌面]#service mysql start

    得到错误:ERROR!The server quit without updating PID file

    我们这里主要是因为:selinux惹的祸,如果是centos系统,默认会开启selinux。解决方法是关闭它,打开/etc/selinux/config,把SELINUX=enforcing改为SELINUX=disabled后存盘退出重启机器。

    然后再启动mysql就没问题了:

    [root@bogon 桌面]#service mysql start

    查看MySQL运行状态:

    [root@bogon 桌面]# service mysql status

    SUCCESS! MySQL running (2377)

    5.修改mysql的root用户的密码

    在shell下执行:mysqladmin -u root -p’原密码’password ‘新密码’

    wps97B6.tmp

    -------------------------------------------------华丽的分割线--------------------------------------------------------------

    二 MySQL中文问题解决

    1.在CentOS7中修改文件/usr/my.cnf,在[mysqld],[mysql],[client]下分别添加如下内容

    [mysqld]

    character_set_server = utf8

    [mysql]

    default-character-set=utf8

    [client]

    default-character-set=utf8

    修改完成后,重启mysql服务,service mysql restart,然后进入mysql,

    使用show variables like ‘character%’查看MySQL的所有字符编码,除了character_set_filesystem和character_set_dir外,其余都位utf8编码。

    wps9E3D.tmp

    2.设置远程客户端的编码格式,一般从远程客户端访问,远程客户端有输入法。设置远程客户端的编码为Unicode(UTF-8),如下图,可以往表中插入中文。

    wps9E3E.tmp

    希望本文对你有所帮助,有问题欢迎拍砖~~

  • 相关阅读:
    单链表
    顺序表
    关于传输协议的简单了解
    URL/URI/URN
    点击图片弹出轮播图 -- 插件
    nodeJs中系统模块的常用方法和自定义模块暴露
    Buffer
    Sublime Text 3 安装Package Control
    npm的简单使用
    scrollTop()和document.body.scrollTop的区别
  • 原文地址:https://www.cnblogs.com/suixinpeng/p/centos_mysql_rpm.html
Copyright © 2020-2023  润新知