1、下载

下载地址:http://dev.mysql.com/downloads/mysql/5.6.html#downloads

下载版本:mysql-5.6.37-linux-glibc2.12-x86_64.tar.gz(通用版,linux下64位)

系统:CentOS6.5

也可以直接复制64位的下载地址,通过命令下载:wget http://dev.mysql.com/get/Downloads/MySQL-5.6/mysql-5.6.33-linux-glibc2.5-x86_64.tar.gz

版本检查是否安装

[root@web1 ~]# rpm -qa|grep mysql
mysql-libs-5.1.61-4.el6.x86_64

卸载 --nodeps 表示强制删除,否则会出现组件被其他程序依赖或者占用的情况

[root@web1 ~]# rpm -e mysql-libs-5.1.61-4.el6.x86_64 --nodeps
[root@web1 ~]# rpm -qa|grep mysql

如果是编译安装的方式可以通过命令删除所有mysql相关的文件和文件夹即可

find / -name mysql

注意:卸载后/etc/my.cnf不会删除,需要进行手工删除

rm -rf /etc/my.cnf

2.解压安装包
tar -zxvf  并mv到/opt/module下,移动后的文件夹名称为mysql
tar -zxvf mysql-5.6.37-linux-glibc2.12-x86_64.tar.gz -C /opt/module
cd /opt/module
mv  mysql-5.6.37-linux-glibc2.12-x86_64 mysql

进入mysql文件夹目录

cd mysql

3.创建用户组和用户
先检查是否存在mysql用户和用户组

[root@node1 mysql]# groups mysql
mysql : mysql

不存在则添加

groupadd mysql useradd -r -g mysql mysql

4.修改权限
在data目录下创建文件夹mysql
mkdir data/mysql

进入mysql目录修改权限
chown -R mysql:mysql ./

5.安装数据库

./scripts/mysql_install_db --user=mysql --datadir=/opt/module/mysql/data/mysql

如果报错:

Installing MySQL system tables..../bin/mysqld: error while loading shared libraries: libnuma.so.1: cannot open shared object file: No such file or directory

那么需要安装numactl.x86_64

yum install numactl.x86_64

6.添加mysql为系统服务

cp support-files/mysql.server /etc/init.d/mysqld
chmod 755 /etc/init.d/mysqld
cp support-files/my-default.cnf /etc/my.cnf

7.修改mysql服务路径配置

vim /etc/init.d/mysqld
basedir=/opt/module/mysql/
datadir=/opt/module/mysql/data/mysql

8.添加mysql系统变量

vim ~/.bash_profile

MYSQL_HOME="/opt/module/mysql"
export PATH=$PATH:$MYSQL_HOME/bin

#使环境变量生效source ~/.bash_profile
#查看是否加入成功echo $PATH

9.启动mysql
service mysqld start  

10.命令行连接MYSQL

mysql -u root -p  //新安装默认没有密码,输入后直接回车即可
或者
./mysql/bin/mysql -uroot

如果报错

[root@node1 support-files]# mysql -u root -p
Enter password:
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)

解决办法

#修改/etc/my.cnf配置文件,增加配置
[client]
#password   = your_password
port        = 3306
socket      = /tmp/mysql.sock

然后停止mysql服务并重启

解决

另外附注一份my.cnf的配置文件

# For advice on how to change settings please see
# http://dev.mysql.com/doc/refman/5.6/en/server-configuration-defaults.html

[client]
#password   = your_password
port        = 3306
socket      = /var/lib/mysql/mysql.sock[mysqld]
port        = 3306
socket      = /var/lib/mysql/mysql.sock
datadir = /opt/module/mysql/data
skip-external-locking
key_buffer_size = 128M
max_allowed_packet = 1M
table_open_cache = 512
sort_buffer_size = 2M
net_buffer_length = 8K
read_buffer_size = 2M
read_rnd_buffer_size = 512K
myisam_sort_buffer_size = 32M
thread_cache_size = 64
query_cache_size = 64M
tmp_table_size = 64Mexplicit_defaults_for_timestamp = true
#skip-networking
max_connections = 500
max_connect_errors = 100
open_files_limit = 65535log-bin=mysql-bin
binlog_format=mixed
server-id   = 1
expire_logs_days = 10#loose-innodb-trx=0
#loose-innodb-locks=0
#loose-innodb-lock-waits=0
#loose-innodb-cmp=0
#loose-innodb-cmp-per-index=0
#loose-innodb-cmp-per-index-reset=0
#loose-innodb-cmp-reset=0
#loose-innodb-cmpmem=0
#loose-innodb-cmpmem-reset=0
#loose-innodb-buffer-page=0
#loose-innodb-buffer-page-lru=0
#loose-innodb-buffer-pool-stats=0
#loose-innodb-metrics=0
#loose-innodb-ft-default-stopword=0
#loose-innodb-ft-inserted=0
#loose-innodb-ft-deleted=0
#loose-innodb-ft-being-deleted=0
#loose-innodb-ft-config=0
#loose-innodb-ft-index-cache=0
#loose-innodb-ft-index-table=0
#loose-innodb-sys-tables=0
#loose-innodb-sys-tablestats=0
#loose-innodb-sys-indexes=0
#loose-innodb-sys-columns=0
#loose-innodb-sys-fields=0
#loose-innodb-sys-foreign=0
#loose-innodb-sys-foreign-cols=0default_storage_engine = InnoDB
innodb_data_home_dir = /opt/module/mysql/data
innodb_data_file_path = ibdata1:10M:autoextend
innodb_log_group_home_dir = /opt/module/mysql/data
innodb_buffer_pool_size = 512M
innodb_log_file_size = 128M
innodb_log_buffer_size = 8M
innodb_flush_log_at_trx_commit = 1
innodb_lock_wait_timeout = 50[mysqldump]
quick
max_allowed_packet = 16M[mysql]
no-auto-rehash[myisamchk]
key_buffer_size = 128M
sort_buffer_size = 2M
read_buffer = 2M
write_buffer = 2M[mysqlhotcopy]
interactive-timeout

11.远程连接权限

(1)通过语句修改

use mysql;
#select 'host' from user where user='root';
update user set host = '%' where user ='root';
flush privileges; 

如果出现下图中的错误,直接忽略

(2)直接授权

GRANT ALL PRIVILEGES ON *.* TO ‘root’@'%’ IDENTIFIED BY ‘123456’ WITH GRANT OPTION;

13.sql基本语句
SHOW DATABASES;  //查看当前所有数据库
CREATE DATABASE 数据库名;  //创建数据库
USE  数据库名; //选择数据库
SOURCE SQL文件路径; //导入数据
GRANT ALL PRIVILEGES ON 数据库名.* TO 用户名@"%" IDENTIFIED BY '密码' WITH GRANT OPTION; //创建一个远程用户使他有某个数据库的所有权限
#启动mysql
service mysqld start
#关闭mysql
service mysqld stop
#查看运行状态
service mysqld status

**********************************************************************************************************************************************************
相关错误
1. ERROR! MySQL is not running, but lock file (/var/lock/subsys/mysql) exists
这是查看mysql status时报出的,删除对应的mysql文件即可
2.Starting MySQL.. ERROR! The server quit without updating PID file (/opt/module/mysql/data/node1.sunny.cn.pid).
卸载重新安装,或者检查mysql目录的data/mysql文件夹权限是够有mysql权限
3.-bash: mysqld: command not found
原因:这是由于系统默认会查找/usr/bin下的命令,如果这个命令不在这个目录下,当然会找不到命令,我们需要做的就是映射一个链接到/usr/bin目录下,相当于建立一个链接文件。
首先得知道mysql命令或mysqladmin命令的完整路径,比如mysql的路径是:/usr/local/mysql/bin/mysql,我们则可以这样执行命令

 ln -s /usr/local/mysql/bin/mysql /usr/bin

然后再去/usr/bin目录下修改mysql命令为mysqld即可

mv mysql mysqld

4.-bash: mysqld_safe: command not found

该命令在mysql/bin目录下

5.Can't connect to local MySQL server through socket '/tmp/mysql.sock' (111)
做个软连接
6.Access denied for user ''@'localhost' to database 'mysql'
my.cnf配置文件中的mysqld中增加一行 skip-grant-tables,然后重启服务后

mysqldmysql>   use  mysql ;
mysql>  update user set password =PASSWORD('NEW') where user='root';
mysql>   flush  privileges;   

my.cnf改回去之后重启mysql

ln -s /usr/local/mysql/bin/mysql /usr/bin

【安装】Mysql在Linux上安装相关推荐

  1. linux 用root安装mysql数据库_Linux上安装Mysql及简单的使用详解

    1. 安装mysql sudo apt-get update sudo apt-get install mysql-server sudo apt-get install python-mysqldb ...

  2. archlinux php mysql,arch linux上安装 httpd+php+mysql+ openssl(转)

    arch linux上安装 httpd+php+mysql+ openssl(转)[@more@] 在arch linux安装则是非常的容易,只要执行: # pacman -Sy apache php ...

  3. centos7不能安装mysql数据库_Centos7 上安装mysql遇上的问题:mysql无法正常启动-Go语言中文社区...

    第一次在Centos上安装mysql遇到的一些问题. 第一步就遇到问题,安装mysql-server报错没有可用包. [解决方法] 先要安装mysql # wget http://repo.mysql ...

  4. 定时任务-Quartz、Mycat简单入门、Linux下安装MySQL、Linux下安装MyCAT、Mycat的数据库分片、Mycat读写分离

    表现层:页面 后台管理系统.商城门户.搜索系统.订单系统.商品详情系统.购物车系统 中间件:dubbo 系统之间的通信,服务的统计,rpc协议远程过程调用 同步通信 服务层:实现具体的业务逻辑 商品服 ...

  5. nginx在linux上安装,Nginx在linux上安装步骤

    Nginx在centos7上的安装过程 #安装前的准备工作 centos7系统环境已经安装好,linux处于能联网状态,且linux和自己window能相互ping同. 首先安装make,编译环境gc ...

  6. linux上安装hackrf_在Linux上安装Kubectl

    在Linux上使用curl安装Kubectl二进制文件 使用以下命令下载最新版本: curl -LO https://storage.googleapis.com/kubernetes-release ...

  7. 深度linux安装postgresql_在 Linux 上安装 PostgreSQL

    说实在的,我的这个 LAMP 网站,其实是不能遗忘这头大象的.MySQL 是一条轻快的小海豚,但是缺少很多现代关系数据库应有的特色,例如:引用完整性,视图,触发器等.因此,如果你需要开发一个电子商务的 ...

  8. kali2.0安装mysql,Ubuntu/kali上安装MySQL,设置远程访问详细教程

    搜索热词 Ubuntu上安装MysqL非常简单只需要几条命令就可以完成. 1. sudo apt-get install MysqL-server 2. apt-get installMysqL-cl ...

  9. linux 安装 mysql off,linux下安装mysql

    linux 下卸载和安装 mysql linux 环境 CentOS 6.4 安装包:Community Server下载地址:http://www.mysql.com/downloads/mysql ...

最新文章

  1. 组合数学题 Codeforces Round #108 (Div. 2) C. Pocket Book
  2. vue实现移动端圆形旋钮插件
  3. 设计模式复习-状态模式
  4. 计算机网络-TCP运输连接管理
  5. 前端三十三:表单form
  6. python属性访问顺序_Python 对象属性的访问
  7. 微软职位内部推荐-Sr. SW Engineer for Azure Networking
  8. Java描述设计模式(16):代理模式
  9. JUnit4单元测试、JUnit4使用详解、assertThat用法
  10. (06)System Verilog 静态变量与动态变量区别
  11. Python 爬取 201865 条《隐秘的角落》弹幕,发现看剧不如爬山?
  12. Photoshop平面设计:网页设计之论摹仿和抄袭——xiame.com
  13. 51单片机汇编语言实验及代码
  14. 计算机主板供电故障,电脑主板出现故障怎么办 电脑主板故障排查方法
  15. 移动开发唱衰,iOS开发者如何涅槃重生?
  16. Cocos2dx游戏开发系列笔记7:一个简单的跑酷游戏《萝莉快跑》的消化(附下载)
  17. 微信小程序实现雪花飘落的效果
  18. vscode 调整行间距
  19. 攻防世界web新手区合集
  20. 3D点云配准算法-4PCS(4点全等集配准算法)

热门文章

  1. 专访 | 在AI 医疗这个热门的赛道上,阿里在怎么玩?
  2. SpringCloud 微服务架构,适合接私活(附源码)
  3. CMS:听我的,生产环境上要这样配置JVM参数
  4. 一行代码,得到最强时序基线!
  5. 百度黄埔学院计划第四期来了!
  6. ELECTRA: 超越BERT, 19年最佳NLP预训练模型
  7. 北漂经历 | 我在北京这几年
  8. DeepMind首席科学家:比起机器智能,我更担心人类智能造成的灾难
  9. 详解Pytorch的nn.DataParallel
  10. Python这么慢,为啥大公司还在用?