MySql(单实例-非编译)安装及使用说明

MySql 数据库安装网上已有N多,下面经博主亲试安装及步骤如下。本文主要是用非编译的单实例安装

1. 检查并清除系统中原有的mysql

[root@localhost ~]# rpm -qa | grep mysql 检查系统中的mysql
&nbps;&nbps; mysql-libs-5.1.73-7.el6.x86_64
mysql-5.1.73-7.el6.x86_64
[root@localhost ~]# rpm -e mysql 利用该命令卸载系统中原有的mysql
[root@localhost ~]# rpm -e mysql-libs-5.1.73-7.el6.x86_64  继续卸载mysql-libs
[root@localhost ~]# rpm -qa | grep mysql 再次检查系统中卸载干净
备注:如果用rpm -e 不能卸载则可用rpm -e xx –nodeps 进行卸载。

2. 创建用户和组

1) 检查系统中是否有mysql用户或者mysql组

[root@localhost local]# cat /etc/group | grep mysql –>检查是否有MySQL组
[root@localhost local]# cat /etc/passwd | grep mysql –> 检查是否有MySQL用户

2) 创建mysql组和mysql用户

[root@localhost local]# groupadd -g 500 mysql –> 指定gid=500 或者自己定义
[root@localhost ~]# useradd -g mysql -G mysql mysql
[root@localhost local]# id mysql
uid=500(mysql) gid=500(mysql) groups=500(mysql)
[root@localhost ~]# passwd mysql –> 修改mysql用户密码

3. 从官网上下载安装包

官方下载地址为:http://dev.mysql.com/downloads/mysql/
下载:mysql-5.7.18-linux-glibc2.5-x86_64.tar.gz
这里写图片描述

4. 创建目录并解压安装包

1) 上传安装包tar.gz到/usr/local/并解压
[root@localhost local]# tar -xzvf mysql-5.7.18-linux-glibc2.5-x86_64.tar.gz
解压后文件夹 –> mysql-5.7.18-linux-glibc2.5-x86_64

2) 更改文件夹mysql-5.7.18-linux-glibc2.5-x86_64 –>mysql
[root@localhost local]# mv ./mysql-5.7.18-linux-glibc2.5-x86_64 ./mysql

3) 更改mysql文件夹的拥有者为mysql
[root@localhost local]# chown -R mysql:mysql /etc/local/mysql

5. 创建目录并解压安装包

1) 用mysql用户创建/home/mysql/data目录
[mysql@localhost ~]$ mkdir /home/mysql/data

2) 用root用户执行命令/usr/local/mysql /bin/mysqld进行初始化mysql的data
[root@localhost mysql]# ./bin/mysqld –user=mysql –basedir=/usr/local/mysql –datadir=/home/mysql/data –initialize

其中注意3个参数:
** user是mysql的拥有者
** basedir 是mysql数据库管理系统
** datadir 是数据存放的位置
初始化data之后,记住最后一行mysql的root密码,因为后面要修改mysql的root密码。
如下图:
这里写图片描述

6.编辑my_default.cnf文件并检测mysql启动

1) 本次安装使用mysql.5.7.18, 官方从5.7.5之后不再提供my-default.cnf文件,需要自己编写相关配置,详见附录中的相关内容。
* 代码my_default.cnf见最后附录
* 需要修改的代码如下.
这里写图片描述
保存成my-default.cnf文件,上传到/etc/local/mysql/support-files/中;之后如下图
这里写图片描述

2) 复制上述的my_default.cnf和mysql.server配置文件到etc目录,复制my_default.cnfmy.cnf,之前复制过该文件到etc目录,如果这里提示是否覆盖,输入Y覆盖。

[root@localhost support-files]# cp my_default.cnf /etc/my.cnf
[root@localhost support-files]# cp mysql.server /etc/

3) 启动mysql
[root@localhost mysql]# ./support-files/mysql.server start
Starting MySQL.Logging to ‘/home/mysql/data/localhost.localdomain.err’.
………………… SUCCESS!

4)检测mysql
[root@localhost ~]# netstat -ntlp | grep 3306
[root@localhost ~]# ps -ef|grep mysql
这里写图片描述

5)关闭mysql
[root@localhost mysql]# /etc/mysql.server stop
Shutting down MySQL.. SUCCESS!

7.登录mysql并更改root密码

1) 由于数据初始化时给的密码比较乱,用mysqladmin进行更改,会出现如下错误。
这里写图片描述
直接用如下方法更改root密码。

2)使用数据库更改root密码
[root@localhost mysql]# ./bin/mysql -uroot –p
进入数据库后,更改密码并刷新即可。
mysql> set password=password(‘123456’);
mysql> FLUSH PRIVILEGES;
这里写图片描述
修改后,用新密码123456登录成功。
这里写图片描述

8.创建软链接

1) 用root创建mysql的软链接
[root@localhost mysql]# ln -s /usr/local/mysql/bin/mysql /usr/bin/mysql
创建之后,mysql用户就可以用mysql命令进行登录数据库了。

9.开机mysql自启动

1) 拷贝启动文件到/etc/init.d/下并重命令为mysqld
[root@localhost mysql]# cp ./support-files/mysql.server /etc/init.d/mysqld

2) 增加执行权限,chkconfig添加mysqld,设置开机启动l
# chmod 755 /etc/init.d/mysqld  增加执行权限
# chkconfig –list mysqld  检查自启动项列表中没有mysqld这个,
# chkconfig –add mysqld  如果没有就添加mysqld
# chkconfig mysqld on  用这个命令设置开机启动:
如下图:
这里写图片描述

10.Mysql服务的启动/重启/停止

# service mysqld status  服务状态
# service mysqld start  启动服务
# service mysqld restart  重启服务
# service mysqld stop  停止服务
如下图:
这里写图片描述

至此,mysql安装完毕。

附录:my-default.cnf

# For advice on how to change settings please see
# http://dev.mysql.com/doc/refman/5.7/en/server-configuration-defaults.html
# *** DO NOT EDIT THIS FILE. It's a template which will be copied to the
# *** default location during install, and will be replaced if you
# *** upgrade to a newer version of MySQL.

[mysqld]

sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES 


# Base Parameter
basedir = /usr/local/mysql
datadir = /home/mysql/data
port = 3306
socket = /home/mysql/data/mysqld.sock
character-set-server=utf8

#Option Parameter
max_connect_errors = 50
table_open_cache = 4096
max_allowed_packet = 32M
#binlog_cache_size = 4M

max_heap_table_size = 128M
read_rnd_buffer_size = 16M
sort_buffer_size = 16M
join_buffer_size = 16M
thread_cache_size = 16
query_cache_size = 128M
query_cache_limit = 4M
ft_min_word_len = 8

thread_stack = 512K
transaction_isolation = REPEATABLE-READ
tmp_table_size = 128M
#log-bin=mysql-bin
long_query_time = 6


server_id=1

innodb_buffer_pool_size = 1G
innodb_thread_concurrency = 16
innodb_log_buffer_size = 16M

innodb_log_file_size = 512M
innodb_log_files_in_group = 3
innodb_max_dirty_pages_pct = 90
innodb_lock_wait_timeout = 120
innodb_file_per_table = on

[mysqldump]
quick

max_allowed_packet = 32M

[mysql]
no-auto-rehash
default-character-set=utf8
safe-updates
socket = /home/mysql/data/mysqld.sock 



[myisamchk]
key_buffer = 16M
sort_buffer_size = 16M
read_buffer = 8M
write_buffer = 8M

[mysqlhotcopy]
interactive-timeout

[mysqld_safe]
open-files-limit = 8192

[client]
default-character-set=utf8 

[root@localhost mysql]# 

猜你喜欢

转载自blog.csdn.net/coolhe21cn/article/details/72963453
今日推荐