【CentOS】CentOS7.0 mysql与卸载
mysql安装:
在使用命令
yum list mysql-server 安装mysql的时候,发现没有mysql的包。这时候,我们需要下载一个
下载包
wget http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm

下载完成,安装mysql-community-release-el7-5.noarch.rpm包
sudo rpm -ivh mysql-community-release-el7-5.noarch.rpm

安装mysql
sudo yum install mysql-server
等待安装完成....

然后选择Y


安装完成后,mysql没有密码需要重置密码才行。
mysql -u root

ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)
解决办法:
1、mysql服务未正常运行:
由于mysql的socket文件是由mysqld服务启动时创建的,如果mysqld服务未正常启动,socket文件自然也不会被创建,当然会找不到socket文件了。对于判断mysql服务是否启动,我们可以使用下面命令:

# 1、 端口是否打开
[root@aiezu.com ~]# lsof -i:3306
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
mysqld 12207 mysql 14u IPv4 52350 0t0 TCP *:mysql (LISTEN) # 2、mysqld服务是否正在运行
[root@aiezu.com ~]# service mysqld status
mysqld (pid 4717) is running...

2、socket文件路径在配置文件中设置不完整:
这一般是由于我们修改了mysql配置“/etc/my.cnf”引起的。比如我们修改了配置文件中“[mysql]”选项下的“socket”参数,而未指定“[client]”、“[mysql]”选项的“socket”参数,导致mysql使用默认的socket文件位置去寻找socket文件,从而导致未找到socket文件而引发此错误。
1、mysql服务未正常运行:
如果是服务未启动,我们运行“service mysqld start”启动服务即可。如果服务启动不了,就去查看mysql服务日志,寻找原因并解决再启动

[root@aiezu.com ~]# service mysqld start
Starting mysqld: [ OK ]
[root@aiezu.com ~]# lsof -i:3306
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
mysqld 14109 mysql 10u IPv4 247183583 0t0 TCP *:mysql (LISTEN)
[root@aiezu.com ~]# service mysqld status
mysqld (pid 14109) is running...

2、完善mysql配置文件:
如果确认mysql服务正常运行,还提示文章标题的此错误,那就是“/etc/my.cnf”配置文件的问题了。解决办法是修改“/etc/my.cnf”配置文件,在配置文件中添加“[client]”选项和“[mysql]”选项,并使用这两个选项下的“socket”参数值,与“[mysqld]”选项下的“socket”参数值,指向的socket文件路径完全一致。如下:

[mysqld]
datadir=/storage/db/mysql
socket=/storage/db/mysql/mysql.sock
...省略n行... [client]
default-character-set=utf8
socket=/storage/db/mysql/mysql.sock [mysql]
default-character-set=utf8
socket=/storage/db/mysql/mysql.sock

原文地址:http://www.aiezu.com/db/mysql_cant_connect_through_socket.html
如果仍解决不了问题,可尝试下面的操作:
Check below things to fix the issue Check the permission of mysql data dir using below command # ls -ld /var/lib/mysql/ Check the permission of databases inside mysql data dir using below command # ls -lh /var/lib/mysql/ Check the listening network tcp ports using below command # netstat -ntlp Check the mysql log files for any error using below command. # cat /var/log/mysql/mysqld.log Try to start mysql using below command # mysqld_safe --defaults-file=/etc/my.cf
修改密码:
# mysql -uroot -p
Enter password: 【输入原来的密码】(如果安装完mysql第一次设置root密码,则直接回车)
mysql>use mysql;
mysql> update user set password=password("123456") where user='root';
mysql> flush privileges;
mysql> exit;
配置mysql允许远程连接的方法
默认情况下,mysql只允许本地登录,如果要开启远程连接,则需要修改/etc/mysql/my.conf文件。
一、修改/etc/mysql/my.conf
找到bind-address = 127.0.0.1这一行
改为bind-address = 0.0.0.0即可
二、为需要远程登录的用户赋予权限
1、新建用户远程连接mysql数据库
mysql>use mysql; mysql>create user luffy IDENTIFIED by ''; //identified by 会将纯文本密码加密作为散列值存储
mysql>grant select,delete,update,insert on *.* to 'luffy'@'%' identified by '' ;
mysql>flush privileges;
允许任何ip地址(%表示允许任何ip地址)的电脑用luffy帐户和密码(123456)来访问这个mysql server。
2、支持root用户允许远程连接mysql数据库
mysql>grant all privileges on *.* to 'root'@'%' identified by '' with grant option;
mysql>flush privileges;
三、查看系统用户

PS.如果远程依然连不上可以参考:
https://jingyan.baidu.com/article/380abd0a3aef431d90192c33.html
mysql安装二
1、下载mysql安装包 mysql-5.7.23-linux-glibc2.12-x86_64.tar.gz
2、先cd /usr/local下: 然后解压 tar -zxvf mysql-5.7.23-linux-glibc2.12-x86_64.tar.gz
解压后为了方便后面操作可把解压后文件名修改为mysql:
mv mysql-5.7.23-linux-glibc2.12-x86_64 mysql
3、然后去到support-files目录下复制my.cnf 到 /etc/my.cnf (mysqld启动时自动读取)cp my-default.cnf /etc/my.cnf
最新版本已经没有my-default.cnf这个文件了
my.cnf
[client]
loose_default-character-set = utf8
socket = /usr/local/mysql/data/mysql.sock
[mysqld]
basedir = /usr/local/mysql
datadir = /usr/local/mysql/data
port = 3306
#server_id = 1
socket = /usr/local/mysql/data/mysql.sock
expire_logs_days = 7
innodb_file_per_table
innodb_buffer_pool_size = 2G
innodb_thread_concurrency = 24
innodb_flush_log_at_trx_commit = 1
innodb_log_buffer_size = 32M
innodb_log_file_size = 256M
innodb_log_files_in_group = 3
innodb_max_dirty_pages_pct = 90
innodb_lock_wait_timeout = 120
wait_timeout = 60
interactive_timeout = 7200
skip-name-resolve
character-set-server = utf8
back_log = 50
max_connections = 3000
max_connect_errors = 32
max_allowed_packet = 32M
binlog_cache_size = 8M
max_heap_table_size = 512M
tmp_table_size = 64M
key_buffer_size = 16M
read_buffer_size = 2M
read_rnd_buffer_size = 8M
bulk_insert_buffer_size = 64M
sort_buffer_size = 4M
join_buffer_size = 2M
thread_cache_size = 64
thread_stack = 192K
query_cache_type = 1
query_cache_size = 256M
query_cache_limit = 2M
ft_min_word_len = 2
default_storage_engine = INNODB
#default_table_type = INNODB
transaction_isolation = REPEATABLE-READ
lower_case_table_names = 1
#log_slow_queries
slow_query_log
long_query_time = 2
log-short-format
myisam_sort_buffer_size = 128M
myisam_max_sort_file_size = 10G
myisam_repair_threads = 1
[mysqldump]
quick
max_allowed_packet = 32M
routines
single-transaction
hex-blob
skip-comments
complete-insert
skip-disable-keys
skip-add-locks
skip-lock-tables
[isamchk]
key_buffer = 512M
sort_buffer_size = 512M
read_buffer = 8M
write_buffer = 8M
[myisamchk]
key_buffer = 512M
sort_buffer_size = 512M
read_buffer = 8M
write_buffer = 8M
[mysqlhotcopy]
interactive-timeout
# Remove leading # to set options mainly useful for reporting servers.
# The server defaults are faster for transactions and fast SELECTs.
# Adjust sizes as needed, experiment to find the optimal values.
# join_buffer_size = 128M
# sort_buffer_size = 2M
# read_rnd_buffer_size = 2M
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
4、复制mysql.server 到/etc/init.d/ 目录下【目的想实现开机自动执行效果】
执行命令:cp mysql.server /etc/init.d/mysql(mysql是服务名)
5、修改 /etc/init.d/mysql 参数vi /etc/init.d/mysql给与2个目录位置basedir=/usr/local/mysqldatadir=/usr/local/mysql/data
6、出于安全便利,创建一个操作数据库的专门用户
1)、groupadd mysql #建立一个mysql的组
2)、useradd -r -g mysql mysql #建立mysql用户,并且把用户放到mysql组
3)、passwd mysql #给mysql用户设置一个密码
4)、给目录/usr/local/mysql 更改拥有者 chown -R mysql:mysql /usr/local/mysql/
初始化 mysql 的数据库
首先去到mysql的bin目录
1.初始化./mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data
生成出一个data目录,代表数据库已经初始化成功并且mysql的root用户生成一个临时密码:xxxxx(最好先记录这个临时密码)
碰到以下问题就是这操作1,没有执行导致
Fatal error: Can't open and lock privilege tables: Table 'mysql.user' doesn't exist
2.给数据库加密./mysql_ssl_rsa_setup --datadir=/usr/local/mysql/data
3.启动mysql(为了不让进程卡主,可在启动mysql的命令后加上&;代表此进程在后台运行)./mysqld_safe --user=mysql &;
4.检查ps -ef|grep mysql
发现有以上进程便代表启动成功。
第五步:进入客户端
1.登录 ./mysql -uroot -p回车后输入之前的临时密码2.修改密码set password=password('新密码');
mysql: command not found
解决:# ln -s /usr/local/mysql/bin/mysql /usr/bin
mysql卸载:
一、使用以下命令查看当前安装mysql情况,查找以前是否装有mysql
rpm -qa|grep -i mysql
可以看到如下图的所示:

2、停止mysql服务、删除之前安装的mysql
删除命令:rpm -e –nodeps 包名
rpm -ev MySQL-client-5.5.25a-1.rhel5
rpm -ev MySQL-server-5.5.25a-1.rhel5
如果提示依赖包错误,则使用以下命令尝试
rpm -ev MySQL-client-5.5.25a-1.rhel5 --nodeps
如果提示错误:error: %preun(xxxxxx) scriptlet failed, exit status 1
则用以下命令尝试:
rpm -e --noscripts MySQL-client-5.5.25a-1.rhel5
3、查找之前老版本mysql的目录、并且删除老版本mysql的文件和库
find / -name mysql
查找结果如下:
find / -name mysql /var/lib/mysql
/var/lib/mysql/mysql
/usr/lib64/mysql
删除对应的mysql目录
rm -rf /var/lib/mysql
rm -rf /var/lib/mysql
rm -rf /usr/lib64/mysql
具体的步骤如图:查找目录并删除

注意:卸载后/etc/my.cnf不会删除,需要进行手工删除
rm -rf /etc/my.cnf
4、再次查找机器是否安装mysql
rpm -qa|grep -i mysql
参考地址:https://www.cnblogs.com/wolf-sun/p/5655439.html
参考地址:https://www.cnblogs.com/nicknailo/articles/8563456.html
参考地址:https://www.aliyun.com/jiaocheng/133867.html?spm=5176.100033.1.15.22996b04YjkV5D
【CentOS】CentOS7.0 mysql与卸载的更多相关文章
- CentOS 7.0 启动多个MySQL实例(mysql-5.7.21)
Linux系统:CentOS-7.0 MySQL版本:5.7.21 Linux系统下启动多个MySQL实例,目前知道有两种方法,一种是通过官方提供的mysqld_multi.server来实现,但是我 ...
- 五、Centos7安装mysql:第一步查看系统有无mysql,然后删除之
CentOS下MySQL的彻底卸载 原创 2015年10月12日 00:16:02 标签: 21149 编辑 删除 #################CentOS7下MySQL的卸载######### ...
- mysql完全卸载
转载自(http://blog.csdn.net/typa01_kk/article/details/49057073) #################CentOS7下MySQL的卸载###### ...
- RPM方式安装MySQL5.5.48 (Aliyun CentOS 7.0 & 卸载MySQL5.7)
环境是阿里云的CentOS7.0,更新了yum源(更新yum源请参考https://help.aliyun.com/knowledge_detail/5974184.html)之后先是尝试安装了MyS ...
- CentOS7 编译安装 Mariadb (实测 笔记 Centos 7.0 + Mariadb 10.0.15)
环境: 系统硬件:vmware vsphere (CPU:2*4核,内存2G,双网卡) 系统版本:CentOS-7.0-1406-x86_64-DVD.iso 安装步骤: 1.准备 1.1 显示系统版 ...
- CentOS 7.0下使用yum安装MySQL
CentOS7默认数据库是mariadb,配置等用着不习惯,因此决定改成mysql,但是CentOS7的yum源中默认好像是没有mysql的.为了解决这个问题,我们要先下载mysql的repo源. 1 ...
- 腾讯云CentOS7.0使用yum安装mysql
背景: 今天才申请了腾讯云+校园计划的1元服务器,(https://www.qcloud.com/event/qcloudSchool)安装了Centos7.0,在安装mysql的时候,使用yum l ...
- 阿里云CentOS自动备份MySql 8.0并上传至七牛云
本文主要介绍一下阿里云CentOS7下如何对MySql 8.0数据库进行自动备份,并使用.NET Core 将备份文件上传至七牛云存储上,并对整个过程所踩的坑加以记录. 环境.工具.准备工作 服务器: ...
- Centos 7.2 安装和卸载 MySQL 5.7
一.背景 闲暇之余在虚拟机安装了 Centos 7.2 系统,按照 <简单安装MySQL(RPM方式)> 这篇文章安装 MySQL ,发现由于包依赖的问题安装失败,于是索性在官网查询相关文 ...
随机推荐
- 菜鸟学SSH(三)——Struts2国际化自动检测浏览器语言版
前几天发了一篇Struts国际化的博客——<菜鸟学习SSH(二)——Struts2国际化手动切换版>,有网友提了一个意见,见下图: 于是就有了下面修改的版本: web.xml <?x ...
- org.apache.flink.runtime.entrypoint.StandaloneSessionClusterEntrypoint
org.apache.flink.runtime.entrypoint.StandaloneSessionClusterEntrypoint-Xms2024m -Xmx2024m -Dlog.file ...
- 高级数据库及一步一步搭建versant数据库
总的来说,高级数据库课程分为分布式数据库和面向对象数据库两块.分布式数据库介绍了分布式数据库的方方面面,包括数据库系统的设计.查询处理优化.事务管理和恢复.并发控制.可靠性.安全性与目录管理等.面向对 ...
- MSSQL 的Top 和 MAX 效率测试
环境: MSSQL 2008, 都在没有使用缓存的情况下面执行 表中有8W 条记录 分类1有134条记录 分别测试了3个语句 -- A select 字段1 from 表1 WHERE Ftype=' ...
- 什么是lib文件,lib和dll的关系如何
(1)lib是编译时需要的,dll是运行时需要的. 如果要完成源代码的编译,有lib就够了. 如果也使动态连接的程序运行起来,有dll就够了. 在开发和调试阶段,当然最好都有. (2)一般的动态库程序 ...
- 域控制器修改IP操作步骤
域控制器更改IP 在DC运维时,可能会碰上需要调整域控制器IP的情况,下面的操作就是在Windows Server 2008环境下域控制器更改IP的完整操作步骤. 1. 使用管理员帐号登录域控制器,依 ...
- Python(四)之Python流程控制(if、while、for)
Python流程控制 if测试: if 条件测试表达式: 组合条件测试: x and y:与运算 x or y:或运算 not x:非运算 while: break:跳出最内层的循环 continue ...
- 利用 fdisk进行分区
):fdisk命令参数 p:打印分区表. n:新建一个新分区. d:删除一个新分区. q:退出不保存. w:退出且保存. 例子: 先看下磁盘: root@archiso ~ # lsblk 在这里对磁 ...
- windows下html2jade批量转换
将项目中的代码转换为jade,使用html2jade批量转换 @echo off SETLOCAL ENABLEDELAYEDEXPANSION for %%i in (*.html) do ( ht ...
- MySQL 中联合查询效率分析
目前我有两个表,一个keywords和一个news表.keyword存放关键词是从news中提取,通newsid进行关联,两表关系如图: keywords中存有20万条数据,news中有2万条数据,现 ...