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密码登录

posted @ 2019-02-12 15:48  小小财经  阅读(123)  评论(0编辑  收藏  举报