zoukankan      html  css  js  c++  java
  • mysql的安装与使用

    一、查看与安装:

    whereis mysql

    rpm –qa|grep mysql”查看安装了哪些MySQL的rpm包

    #mysql-community-release-el6-5.noarch
    #mysql-community-common-5.6.26-2.el6.i686

    yum remove mysql-community-release-el6-5.noarch mysql-community-common-5.6.26-2.el6.i686 删除安装包

    MySQL创建的数据库一般位于“/var/lib/mysql”目录下,将“/var/lib/mysq”目录删除即可,否则在安装新的MySQL的时候,它发现已经有数据库了,就不会创建新的数据库了

    MySQL的安装方式有两种,一种是用yum安装,yum会自动联网下载rpm包进行安装;一种是用rpm命令安装,需要自己手动下载MySQL的rmp安装包。

    首先到oracle官网下载“mysql-community-release-el6-5.noarch.rpm”,该文件很小,是MySQL的yum源包,里面只是记录了MySQL的yum地址。

    将下载的源“mysql-community-release-el6-5.noarch.rpm”上传到linux服务器,使用yum命令安装此源:

    yum localinstall mysql-community-release-el6-5.noarch.rpm
    yum install mysql-server  #安装mysql
    service mysqld status #查看mysql状态
    service mysqld start #启动mysql服务
    /usr/bin/mysqladmin -u root password 'xxxx' #为root用户设置密码
    GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'root' WITH GRANT OPTION; #不允许远程连接mysql数据库服务器!需要授权才能访问
    *rpm安装时就要先下载安装包,然后直接安装:rpm -ivh mysql-community-*

    二、字符编码问题
    show variables like '%char%'; 未修改编码之前,查看字符集设置如下:
    vi /etc/my.cnf 修改mysql的默认字符集

    character_set_database=utf8
    # For advice on how to change settings please see
    # http://dev.mysql.com/doc/refman/5.6/en/server-configuration-defaults.html
    
    [client]     新增[client]标签
    default-character-set=utf8            新增此配置
    [mysqld]
    default-storage-engine=INNODB       新增此配置
    character-set-server=utf8             新增此配置
    collation-server=utf8_general_ci       新增此配置
    

     修改配置后重启mysql

    三、大小写字母问题

    在windows下,mysql不区分大小写,而在linux下,mysql是严格区分大小写的。

    vi /etc/my.cnf
    [client]
    default-character-set=utf8
    [mysqld]
    default-storage-engine=INNODB
    character-set-server=utf8
    collation-server=utf8_general_ci
    lower_case_table_names=1    增加此项配置

    摘引:https://www.cnblogs.com/jun1019/p/6359067.html

    四、如果是安装的mysql8.0版本

    mysql安装完成之后,在/var/log/mysqld.log文件中给root生成了一个临时的默认密码。这时需要自己修改为自定义密码

    先用临时密码登录,然后修改密码:mysql -uroot -p 

    ALTER USER 'root'@'localhost' IDENTIFIED BY 'Test@2019';  注意:名字必须有大写字母,数字和特殊符号

    Mysql默认不允许远程登录,所以需要开启远程访问权限,可以先查看user表,默认的host都是localhost

    select user,authentication_string,host from user;

    update user set host = '%' where user = 'root';

    FLUSH PRIVILEGES;

    firewall-cmd --zone=public --add-port=3306/tcp --permanent

    firewall-cmd --reload

    五、远程连接问题

    MySql8.0 版本 和 5.0 的加密规则不一样,而现在的可视化工具只支持旧的加密方式。在MySQL 8.04前,执行:SET PASSWORD=PASSWORD('[新密码]');但是MySQL8.0.4开始,这样默认是不行的。因为之前,MySQL的密码认证插件是“mysql_native_password”,而现在使用的是“caching_sha2_password”。

    将 MySQL 用户登录的加密规则修改为 mysql_native_password

    ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '自己的新密码';

    FLUSH PRIVILEGES;

    六、其它问题

    在安装python时,一般教程都会提示说,安装成功后,yum不能用,需要修改yum配置文件(vim /usr/bin/yum)。 把文件头部的#!/usr/bin/python改成#!/usr/bin/python2.7
    那么这个方法,继续可以在这个问题上使用:
    第一步,vim /usr/bin/firewall-cmd, 将#!/usr/bin/python -Es 改为 #!/usr/bin/python2.7 -Es(到目前为止,上面提到的问题已解决)
    第二步,vim /usr/sbin/firewalld, 将#!/usr/bin/python -Es 改为 #!/usr/bin/python2.7 -Es (这一步是针对于防火墙报错,进行的修改)

    ***********************************************************************************************************************************************************************

    centos7中mysql5.7的安装:

    1、

    yum install -y zlib-dev openssl openssl-devel sqlite-devel bzip2-devel gcc mysql-devel pcre-devel xml2 libxml2-devel libxslt libxslt-devel python-pyasn1 libffi-devel python-pyasn1-modules

    2、查看当前系统是否有安装:rpm -qa | grep mysql

    3、wget http://dev.mysql.com/get/mysql57-community-release-el7-8.noarch.rpm   #下载mysql的安装源包

    4、yum install -y mysql-community-server  #安装mysql

    5、mysql -V    #查看是否安装成功 

    6、systemctl start mysqld #启动服务

    7、systemctl enable mysqld  #设置开机启动

    8、grep 'temporary password' /var/log/mysqld.log    #查看是否自动生成随机数据库root账号密码,如果有,这时使用连接上后,show databases;  会提示要修改密码。

    9、set password=password(‘your new root password');   #设置新密码

    10、grant all privileges on *.* to root@'%' identified by 'your new root password';    #授权可以远程访问

    11、flush privileges;     #刷新权限

     ###mysql的升级###

    1、service mysqld stop

    2、下载rpm最新包:rpm -Uvh http://repo.mysql.com/mysql-community-release-el6-5.noarch.rpm

    3、安装yum install mysql-community-server

    ###mysql忘记密码###

    1、修改mysql的配置文件/etc/my.cnf,在mysqld的节点下添加:skip-grant-tables

    3、重启mysql服务:systemctl restart mysqld.service

    4、mysql -uroot -p  无密码直接登录,然后在mysql数据库下修改user表中的root密码

    5、把my.cnf中的修改项注释掉

    6、重启mysql服务,用新root密码登录

  • 相关阅读:
    SQL SERVER 2005 行转列
    为什么jQuery.get、jQuery.getJSON、jQuery.post无法返回JSON
    Silverlight 布局控件
    python socket connection
    linux下缓存的查看/修改
    openstackflat 网络问题
    Fail to start neutronserver
    copy module
    python ConfigParser
    itertools 介绍
  • 原文地址:https://www.cnblogs.com/ameile/p/10365480.html
Copyright © 2011-2022 走看看