Linux下的mysql安装【快速版】

前言
【废话】因为要写一个linux论文,我正好也学过MYSQL,在Windows下安装MYSQL好多次包括图形界面navicat,详请访问Windows下的MYSQL安装,linux论文太难想了!!!因为我们只学了一些基础不能再基础,简单不能再简单的命令,想要深度的写东西,简直太难了!!wu~想了三天的题目,终于决定从MYSQL入手!
【正文】先说一下本人电脑的配置:win7、VMware Workstation、centos
参考菜鸟教程的MYSQL安装,真的是太垃圾,都是错误!!连括号要加转义符号都没有,还有致命的错误是在配置文件中!!天知道出了错误我是百度百度的搜,一行代码一行代码的改…
废话不多说,我是在菜鸟教程的基础上改进的,避免了一些不必要的错误,不过菜鸟提供的压缩包是没有问题的,这点值得一看。
【安装前期工具】
一、安装编译工具及库文件
直接在linux终端敲入下面的代码

$ yum -y install gcc gcc-c++ make autoconf libtool-ltdl-devel gd-devel freetype-devel libxml2-devel libjpeg-devel libpng-devel openssl-devel curl-devel bison patch unzip libmcrypt-devel libmhash-devel ncurses-devel sudo bzip2 flex libaio-devel

二、 安装cmake 编译器
cmake 版本:cmake-3.1.1。
1、下载地址:http://www.cmake.org/files/v3.1/cmake-3.1.1.tar.gz
(Windows下)
菜鸟上是用的wget,不过我试了试,发现报错

$ wget http://www.cmake.org/files/v3.1/cmake-3.1.1.tar.gz

后来搜了搜,下面的代码通过了,可能会出现没有许可证的问题,需要加https

$ sudo wget --no-check-certificate https://www.cmake.org/files/v3.1/cmake-3.1.1.tar.gz

参考博客为:https://blog.csdn.net/popi2268/article/details/82886540
报错:ERROR: certificate common name “www.mysql.com” doesn’t match requested host name “137.254.60.11”.
也可以有个简单又粗暴的方法,只要不嫌麻烦,就是现在Windows下下载后安装包,然后复制粘贴到linux下,到时候只需要解压就好啦,哈哈哈,如果文件过大,不建议这么做。
2、解压安装包

$ tar zxvf cmake-3.1.1.tar.gz

3、进入安装包目录

$ cd cmake-3.1.1

4、编译安装

$ ./bootstrap
$ make && make install

三、安装 MySQL
MySQL版本:mysql-5.6.15。
1、下载地址: http://dev.mysql.com/get/Downloads/MySQL-5.6/mysql-5.6.15.tar.gz
(Windows下)
菜鸟上是用的wget,不过我试了试,发现报错

$ wget http://dev.mysql.com/get/Downloads/MySQL-5.6/mysql-5.6.15.tar.gz

后来搜了搜,下面的代码通过了,可能会出现没有许可证的问题,需要加https

 $ sudo wget --no-check-certificate https://dev.mysql.com/get/Downloads/MySQL-5.6/mysql-5.6.15.tar.gz

也可以有个简单又粗暴的方法,只要不嫌麻烦,就是现在Windows下下载后安装包,然后复制粘贴到linux下,到时候只需要解压就好啦,哈哈哈,如果文件过大,不建议这么做。
2、解压安装包

$ tar zxvf mysql-5.6.15.tar.gz

3、进入安装包目录

$ cd mysql-5.6.15

4、编译安装

$ cmake -DCMAKE_INSTALL_PREFIX=/usr/local/webserver/mysql/ -DMYSQL_UNIX_ADDR=/tmp/mysql.sock -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_EXTRA_CHARSETS=all -DWITH_MYISAM_STORAGE_ENGINE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_MEMORY_STORAGE_ENGINE=1 -DWITH_READLINE=1 -DWITH_INNODB_MEMCACHED=1 -DWITH_DEBUG=OFF -DWITH_ZLIB=bundled -DENABLED_LOCAL_INFILE=1 -DENABLED_PROFILING=ON -DMYSQL_MAINTAINER_MODE=OFF -DMYSQL_DATADIR=/usr/local/webserver/mysql/data -DMYSQL_TCP_PORT=3306
$ make && make install

注意:!!一定要时刻观察终端有没有出来报错信息!!我的好像这一步出现报错了,意思是我没有权限,要以su的身份进入!!如果出现这样的信息,一定现以su的身份进入!然后重新执行该命令!切记!
5、查看mysql版本:

$ /usr/local/webserver/mysql/bin/mysql --version

到此,mysql安装完成。
四、MySQL 配置
1、创建mysql运行使用的用户mysql:

$ /usr/sbin/groupadd mysql
$ /usr/sbin/useradd -g mysql mysql

2、创建binlog和库的存储路径并赋予mysql用户权限

$ mkdir -p /usr/local/webserver/mysql/binlog /www/data_mysql
$ chown mysql.mysql /usr/local/webserver/mysql/binlog/ /www/data_mysql/

3、创建my.cnf配置文件【将/etc/my.cnf替换为下面内容】
【注意!!这个配置文件的错误因人而异,主要看你后面报错的文件在哪,然后把路径也改到哪】
举个例子,比如我后来报错的内容为下图,那我把/etc/my.cnf文件中的datadir
在这里插入图片描述
在这里插入图片描述
改为:

datadir=/usr/local/webserver/mysql

就不会出现上面的错误了!!但现在请不要着急,先不要急着改配置文件datadir的路径,因为我不知道你是否安装的目录和我的一样!!我先给你我的路径配置正确的/etc/my.cnf文件,如果后来的你也报错了,注意改路径!!
适合我的配置文件:

$ cat /etc/my.cnf

[client]
port = 3306
socket = /tmp/mysql.sock
[mysqld]
replicate-ignore-db = mysql
replicate-ignore-db = test
replicate-ignore-db = information_schema
user = mysql
port = 3306
socket = /tmp/mysql.sock
basedir = /usr/local/webserver/mysql
datadir = /usr/local/webserver/mysql
log-error = /usr/local/webserver/mysql/mysql_error.log
pid-file = /usr/local/webserver/mysql/mysql.pid
open_files_limit = 65535
back_log = 600
max_connections = 5000
max_connect_errors = 1000
table_open_cache = 1024
external-locking = FALSE
max_allowed_packet = 32M
sort_buffer_size = 1M
join_buffer_size = 1M
thread_cache_size = 600
#thread_concurrency = 8
query_cache_size = 128M
query_cache_limit = 2M
query_cache_min_res_unit = 2k
default-storage-engine = MyISAM
default-tmp-storage-engine=MYISAM
thread_stack = 192K
transaction_isolation = READ-COMMITTED
tmp_table_size = 128M
max_heap_table_size = 128M
log-slave-updates
log-bin = /usr/local/webserver/mysql/binlog/binlog
binlog-do-db=oa_fb
binlog-ignore-db=mysql
binlog_cache_size = 4M
binlog_format = MIXED
max_binlog_cache_size = 8M
max_binlog_size = 1G
relay-log-index = /usr/local/webserver/mysql/relaylog/relaylog
relay-log-info-file = /usr/local/webserver/mysql/relaylog/relaylog
relay-log = /usr/local/webserver/mysql/relaylog/relaylog
expire_logs_days = 10
key_buffer_size = 256M
read_buffer_size = 1M
read_rnd_buffer_size = 16M
bulk_insert_buffer_size = 64M
myisam_sort_buffer_size = 128M
myisam_max_sort_file_size = 10G
myisam_repair_threads = 1
myisam_recover
interactive_timeout = 120
wait_timeout = 120
skip-name-resolve
#master-connect-retry = 10
slave-skip-errors = 1032,1062,126,1114,1146,1048,1396
#master-host = 192.168.1.2
#master-user = username
#master-password = password
#master-port = 3306
server-id = 1
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=0

slow_query_log_file=/usr/local/webserver/mysql/mysql_slow.log
long_query_time = 1
[mysqldump]
quick
max_allowed_packet = 32M

你应该知道cat 文件名是查看该文件吧,vi 文件名是编译该文件这么简单的文件替换你应该会吧~还有vi进入该文件编译的时候,要注意退出时先按几下ESC键,然后输入:接着按wq安全退出,如果你直接关终端的话,呵呵,你的文件就【死了】,给自己造成不必要的麻烦!或者你直接找到 /etc/my.cnf这个文件,打开后文件替换,我前一种说的是用命令在终端中改的。【我嫩老师讲这个安全退出,强烈要求我们记住!太阔怕@_@】
4、初始化数据库
说起这个初始数据库,我就快气死了,菜鸟上给的命令,,我,报错啊!先看菜鸟上的命令。

$/usr/local/webserver/mysql/scripts/mysql_install_db --defaults-file=/etc/my.cnf  --user=mysql

如果你也报错的话,我用的是下面的命令:

$/usr/local/webserver/mysql/scripts/mysql_install_db --defaults-file=/etc/my.cnf --basedir=/usr/local/webserver/mysql/ --user=mysql

参考:https://blog.csdn.net/weixin_30783913/article/details/94879594
显示如下信息:

Installing MySQL system tables...2015-01-26 20:18:51 0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option (see documentation for more details).
OK

Filling help tables...2015-01-26 20:18:57 0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option (see documentation for more details).
OK
...

如果你成功出现以上信息恭喜你!!你已经安装好一大半了!但不要骄傲,可能还有问题等着你来解决,加油!
5、创建开机启动脚本

$ cd /usr/local/webserver/mysql/
$ cp support-files/mysql.server /etc/rc.d/init.d/mysqld 
$ chkconfig --add mysqld 
$ chkconfig --level 35 mysqld on

6、启动mysql服务器

$ service mysqld start

差不多99%的小伙伴都栽跟头到了这个地方,没错,,我一开始也没有连接成功,让我气的啊!百度上说的五花八门,我恨不得把我的虚拟机卸载了,不甘心,为了安装它,我差不多花费了一下午的时间!!后来冷静想了想,找到了问题所在。
报错:
在这里插入图片描述
第一、就是我前面所说的配置文件/etc/my.cnf的事情,我已经改过来了,因为/etc/my.cnf文件中没有我报错的路径,ok。
第二、selinux惹的祸,如果是centos系统,默认会开启selinux
解决方法:关闭它,打开/etc/selinux/config,把SELINUX=enforcing改为
SELINUX=disabled
后存盘退出重启机器试试。
在这里插入图片描述

我差不多是这两个错误,如果你这样操作还是没有连接成功,更多错误请参考:https://blog.csdn.net/zhou75771217/article/details/82893997
也是没办法的事,错误这个方面有很多,也可能是你的磁盘满了,我也爱莫能助,祝愿你们在这一步都能连接成功!@#@

7、连接 MySQL

$ /usr/local/webserver/mysql/bin/mysql -u root -p

在这里插入图片描述
第一次进入不需要密码,root进入才不需要密码
想设置密码请参考
https://zhidao.baidu.com/question/1818956186226741508.html
本人比较懒,写到这就不想动啦~
其他命令

启动:service mysqld start
停止:service mysqld stop
重启:service mysqld restart
重载配置:service mysqld reload

修改MySQL用户密码

mysqladmin -u用户名 -p旧密码 password 新密码

或进入mysql命令行

SET PASSWORD FOR '用户名'@'主机' = PASSWORD(‘密码');
这里的括号可能需要转义字符\,我就不改了,聪明的你们应该知道怎么加了吧,嘿

创建新用户并授权:

grant all privileges on *.* to 用户名@'%' identified by '密码' with grant option;   
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值