安装MySQL
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了安装MySQL相关的知识,希望对你有一定的参考价值。
Mysql编译安装:
1.为了确保mysql数据库功能的完整性,可控制性可以采用源代码编译的方式安装Mysql数据库系统,其官方站点为https://www.mysql.com/
2.也可以采用OneinStack安装,其官方站点为https://oneinstack.com
3.也可以采用yum安装MySQL,yum安装Mysql极其简单安装适合对数据库要求不高的场合,例如并发不大,公司内部;
Mysql编译安装准备工作:
(1) 为了避免发生端口冲突,程序冲突等现象,建议先查询Mysql软件的安装情况,确认没有使用过RPM方式安装的Mysql-server、Mysql软件包,否则建议卸载.
[[email protected] ~]# rpm -q msyql-server mysql package msyql-server is not installed package mysql is not installed [[email protected] ~]# 如有服务: [[email protected] ~]# rpm -e mysql-server mysql --nodeps
(2) 安装依赖包ncurses-devel
[[email protected] ~]# yum -y install ncurses-devel Complete!
(3) 安装配置工具cmake
[[email protected] ~]# tar xf cmake-2.8.12.tar.gz -C /usr/src/ [[email protected] ~]# cd /usr/src/cmake-2.8.12/ [[email protected] cmake-2.8.12]# ./configure && gmake && gmake install
源码编译及安装:
(1)创建运行用户
为了加强数据库服务的权限控制,建议使用专门的运行级用户,如Mysql,此用户不需要直接登陆到系统,可以不创建宿主文件夹.
[[email protected] ~]# groupadd mysql [[email protected] ~]# useradd -M -s /sbin/nologin -g mysql mysql [[email protected] ~]#
(2)解包
将下载的MySQL源码包解压,释放到/usr/src/目录下,并切换到展开后的源码目录
[[email protected] ~]# tar zxf mysql-5.7.20.tar.gz -C /usr/src/ [[email protected] ~]# cd /usr/src/mysql-5.7.20.tar.gz
(3) 配置
在网站平台中,可能会用到多种字符集的网页,相应的数据库系统也应该支持不同字符集编码,可以在配置过程中将默认使用的字符串设置为utf-8,并添加其他字符集的支持.
[[email protected]]#cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_EXTRA_CHARSETS=all -DSYSCONFDIR=/etc && make && make install
注释:
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql //将指定的mysql数据库程序安装到/usr/local/mysql下
-DDEFAULT_CHARSET=utf8 //默认字符集为 utf8
-DDEFAULT_COLLATION=utf8_general_ci //默认的字符集校对规则
-DWITH_EXTRA_CHARSETS=all //安装所有字符集
-DSYSCONFDIR=/etc //配置文件存放目录,指定初始化参数目录文件
安装后的其他调整:
(1) 对数据库目录进行权限设置:
[[email protected] etc]# chown -R mysql:mysql /usr/local/mysql/
(2) 建立配置文件:
在mysql源码目录中的support-files文件夹下,提供了适合不同负载均衡数据库的样本配置文件,如果不确定数据库系统的的应用规模,,一般选择my-default.cnf文件即可,该文件能满足大多数的中等应用需求,根据以下参考内容建立mysql系统的/etc/my.cnf配置文件。
[[email protected] etc]# rm -rf /etc/my.cnf //如果原来的etc文件下有my.cnf 文件可以删除。
[[email protected] mysql-5.7.2-m12]# cp support-files/my-default.cnf /etc/my.cnf
(3) 初始化数据库:
为了能够正常使用mysql数据库系统,应用运行用户mysql的身份执行初始化脚本mysql-install_db 指定数据存放目录
/usr/local/mysql/scripts/mysql_install_db --basedir=/usr/local/mysql/ --datadir=/usr/local/mysql/data --user=mysql
--basedir=/usr/local/mysql/ //指定安装目录(产品目录)
--datadir=/usr/local/mysql/data //指定数据目录
--user=mysql //指定用户身份
(4)设置变量环境:
为了方便在任何目录下使用mysql命令需要在etc下profile设置变量:
[[email protected] mysql-5.7.2-m12]#echo "PATH=$PATH:/usr/local/mysql/bin" >> /etc/profile [[email protected] mysql-5.7.2-m12]#. /etc/profile = source /etc/profile
添加系统服务:
若希望添加mysqld系统服务,以便于通过chkconfing进行管理,可以直接使用源码包中提供的服务脚本,找到support-files文件夹下的mysql-server脚本,将其复制到etc下rc.d下init.d 并且改名为mysqld 然后在设置权限,通过执行chkconfing命令将其添加到mysqd系统服务:
[[email protected] mysql-5.7.2-m12]#cp support-files/mysql.server /etc/init.d/mysqld [[email protected] mysql-5.7.2-m12]#chmod +x /etc/init.d/mysqld [[email protected] mysql-5.7.2-m12]#chkconfig --add mysqld [[email protected] mysql-5.7.2-m12]#chkconfig --list mysqld mysqld 0:关闭 1:关闭 2:启用 3:启用 4:启用 5:启用 6:关闭
这样以后可以使用service工具或者直接执行/etc/init.d/mysqld 脚本来控制mysql
[[email protected] scripts]# /etc/init.d/mysqld status MySQL running (12025) [ OK ] [[email protected] scripts]# [[email protected] scripts]# netstat -anpt | grep mysqld tcp6 0 0 :::3306 :::* LISTEN 12025/mysqld [[email protected] scripts]#
Mysq服务默认通过tcp3306端口提供服务,通过编辑etc下的my.cnf 配置文件中【mysqld】配置段的port - 3306 行,可以更改监听端口.
Mysql数据库系统也是一个典型的C/S(客户端/服务器),架构的应用,要访问mysql数据库需要使用专门的客户端软件,在liux
my.cnf 配置文件相关介绍,在mysql解压路径support-files/下提供的模版
my-huge.cnf 巨大数据量
my-innodb-heavy-4G.cnf innodb引擎
my-large.cnf 大数据量
my-medium.cnf 测试使用
my-small.cnf 小数据量
MySQL 数据库存储引擎:
myisam
innodb
多个配置文件时的应用顺序,后一个覆盖前一个配置文件
/etc/my.cnf --> /etc/mysql/my.cnf --> $BASEDIR/my.cnf --> ~/.my.cnf
MySQL 是C/S结构,连接时需要客户端工具,Linux下mysql(如果是通过rpm格式安装软件需要安装mysql 软件包)
连接并登录到MySQL操作环境
mysql -u 指定用户名
-p 指定密码
-h 指定主机
-P 指定端口
netstat -anpt |grep mysqld
tcp 3306 端口
[[email protected] ~]# mysql -u root 默认root为Mysql用户,并为空密码
设置数据库用户的密码
mysqladmin -u root password ‘123456‘
以上是关于安装MySQL的主要内容,如果未能解决你的问题,请参考以下文章
连接MySQL出现错误:ERROR 1045 (28000): Access denied for user ‘root‘@‘localhost‘ (using password: YES)(代码片段
使用 json rereiver php mysql 在片段中填充列表视图
在Tomcat的安装目录下conf目录下的server.xml文件中增加一个xml代码片段,该代码片段中每个属性的含义与用途
关于mysql驱动版本报错解决,Cause: com.mysql.jdbc.exceptions.jdbc4Unknown system variable ‘query_cache_size(代码片段