梦相随1006

版权归 梦相随1006 所有,未经 https://www.cnblogs.com/xin1006 作者许可,严禁转载

导航

mysql5.6.24的安装与简单使用--Linux版5.7.24

1, 下载绿色版Mysql5.6.24

  http://dlsw.baidu.com/sw-search-sp/soft/ea/12585/mysql-5.6.24-win32.1432006610.zip 

   

  官网下载自己想要的版本:  https://dev.mysql.com/downloads/mysql/ 

 

2,将bin目录设置到环境变量中

  比如 :path = %Path%;D:\Program Files\mysql-5.6.24-win32-noinstall\bin;

 

3,修改my.ini文件

  1) 解压后可以看到my-default.ini,复制它并命名为my.ini

  2) 编辑my.ini里面的属性

    #mysql的目录
    basedir = D:\Program Files\mysql-5.6.24-win32-noinstall

    #mysql存放数据的目录
    datadir = D:\Program Files\mysql-5.6.24-win32-noinstall\data

    port=3306

    character_set_server=utf8

 

  [client]

  port=3306
  default-character-set=utf8

 

      https://files.cnblogs.com/files/yangw/my.ini.rar 

 

4,通过命令提示符安装mysql

  打开cmd,进入到mysql的bin目录下,使用 mysqld install命令安装

     

  此时在windows的服务中,就可以看到Mysql的服务

     

 

     mysqld remove 命令卸载Mysql

 

5,通过命令启动mysql服务

  net start mysql 

  

6,进入mysql

  使用 mysql -u root -p回车之后输入密码进入(注意,第一次使用root登录时是没有密码的,直接回车)

  

7, 查询mysql中所有的数据库  show databases  

      原始数据库中,我们一般不作修改.

  

 8, 退出与停止mysql服务

  退出mysql命令提示符,使用 quit

  停止mysql服务, 使用命令 net stop mysql 

  

 9, 显示一下安装的mysql编码方式

   show variables like 'char%';

  

---------------------------------------------------------------------------------------------------------

 

1, 创建数据库

  create database xxx;

2,使用数据库

  use xxx;

3, 查询所有数据库的表

  show tables;

4, 查看数据库中的某张表的结构

  desc t_xxx;

5, 删除数据库

  drop database xxx;

 

  

 

---------------------------------------------------------------------------------------------------------

 

1, mysql常用的数据类型

  int             表示整型

  float          表示浮点型

  varchar      表示可变长度的字符串(最大256)

  char          表示固定长度的字符串(最大256)

  text          表示文本类型, 比如说存一个网页的内容

  binary     表示二进制类型,比如说存图片,存文件时使用 类似于 blob

  date        表示日期类型

  time      表示时间类型

  datetime   表示日期和时间 类似于 timestamp

  其它还有很多类型,参考文档说明...

 

2, 数据表的命名规则 : 

  建议段字使用下划线,比如 user_id

  建议普通表使用t_xxx命名,比如 t_user,临时表使用temp_xxx

 

3, 创建t_user表

 

-- 创建表
create table if not exists t_user(
    id int(10) auto_increment primary key,
    username varchar(20) not null unique,
    password varchar(20),
    sex    char(1) default 'm',
    birday date comment '这是生日哦'
) comment '用户表';

-- 表结构修改

ALTER TABLE t_user RENAME TO t_user1 ; -- 修改表名
ALTER TABLE t_user change COLUMN gender sex   char(1) COMMENT '类型:w-女;m-男 '  ;  -- 修改表列名 
ALTER TABLE t_user MODIFY id int(20); -- 修改字段类型
ALTER TABLE t_user ADD address VARCHAR(40); -- 添加表列
ALTER TABLE t_user DROP column address ; --删除表列 
 
 -- 表备注添加

 ALTER TABLE t_user COMMENT='这是表的注释'; 
-- mysql 修改列的注释是比较麻烦的,它会重新建表列,浪费时间的

 

4,  导入一个sql脚本文件

  source 路径  ,注意路径只能使用 这种斜杠 / 

  

 5, 创建外键关联表  学生和班级是一对多的关系

  

create table if not exists t_classroom(
    id int(10) auto_increment primary key,
    classname varchar(50),
    grade int(10)
) comment '班级表';

create table if not exists t_student(
    id int(10) auto_increment primary key,
    username varchar(20),
    password varchar(20),
    birday date ,
    cls_id int(10),
    -- 外键的使用方式
    constraint foreign key (cls_id) references t_classroom(id)
) comment '学生表';

 

6, 为用户授权 grant ,可以实现修改用户密码(5.6.X)

 

-- 创建用户yangw并设置密码为123456,它可以对cms数据库中所有对象进行所有的操作 (下面这个是只能通过localhost访问到)
GRANT All ON cms.* TO 'yangw'@'localhost' IDENTIFIED BY '123456';

-- 修改root用户的密码,root是可以访问所有的数据库对象的

GRANT All ON *.* TO 'root'@'localhost' IDENTIFIED BY '123456';

-- 用户在任何ip地址中都能访问数据库,用户可以设置为无密码

GRANT All ON cms.* TO 'root'@'%' ;
GRANT All ON cms.* TO 'root'@'%'  IDENTIFIED BY '';

 5.7.X版本  修改root用户的访问权限,让所有ip都可以访问这个用户

update user set authentication_string=password("xxxx"where user "root";flush privileges;

use mysql;

grant all privileges on *.* to 'root'@'%' identified by 'JLwg!2017' with grant option;

flush privileges;

最后重启服务即可生效

 

7, insert语句, truncate清空表(同时也会将自动递增标识清空)

 

-- insert语句,为指定字段赋值
insert into t_user (username,password) values ('张三','123456');

--insert语句, 不指定字段,此时需要为每一个字段赋值, 主键是自动生成的,这里设置为null即可

 insert into t_user values (null,'李四','123456','y','2015-06-10');

-- insert    ....   select

insert into t_student (username,password) select username,password from t_user ;


--干掉整个表的数据,也就是清空表

truncate table t_user;

 

8, id in(a,b,c) 的效率 比 id=a or id=b or id=c 的效率高.

 

9, now() 获取当前时间  ,mysql中有很多有用的时间函数,比如 获取年份YEAR()

 -- 查询当前时间
select now();
     2015-11-27 18:04:55

-- 查询当前的年份
select YEAR(now());
   2015

 10,group by 

-- 查询出每个年龄段的学生数量.

select YEAR(birday) as 'y' ,count(id) from t_student group by y;

 

navicat连接mysql数据库时,使用root用户,需输入密码(本文设置的是123456)

但当使用授权的用户xt_oms时,输入密码则无法连接报1045, 不输入密码则可以连接,但只能看到两个数据库

 

 

=====================================================Linux版本的Mysql========================

https://dev.mysql.com/downloads/mysql/ 

 

###===========================================================================================================
###
### 安装mysql(下载好的包,离线安装) https://blog.csdn.net/kokjuis/article/details/78215020
### 在CentOS7 安装
###===========================================================================================================

#列出安装的mysql。
rpm -qa | grep mariadb ###显示mariadb-libs-5.5.56-2.el7.x86_64

#强制卸载
rpm -e --nodeps mariadb-libs-5.5.56-2.el7.x86_64
rpm -e --nodeps mariadb-libs-5.5.60-1.el7_5.x86_64

rpm -e --nodeps mariadb-5.5.60-1.el7_5.x86_64
rpm -e --nodeps mariadb-libs-5.5.60-1.el7_5.x86_64
rpm -e --nodeps mariadb-devel-5.5.60-1.el7_5.x86_64
rpm -e --nodeps mariadb-server-5.5.60-1.el7_5.x86_64


#检查是否有遗留文件。如果有删除即可。
ls /etc/my.cnf
ll /var/lib/mysql/ ll /var/lib64/mysql(64位)

groupadd mysql
useradd -g mysql mysql

官网下载mysql包
https://dev.mysql.com/downloads/mysql/5.7.html#downloads
Version:5.7.24 , Operating System:Linux-Generic, OS Version:64位
mysql-5.7.24-linux-glibc2.12-x86_64.tar.gz 下载它

后面的安装步骤可完全按照上面链接进行

拷贝tar.gz包到 /usr/local/ 目录下:
cp mysql-5.7.24-linux-glibc2.12-x86_64.tar.gz /usr/local/
cd /usr/local/
解压
tar -zxvf mysql-5.7.24-linux-glibc2.12-x86_64.tar.gz
重命名目录为 mysql
mv mysql-5.7.24-linux-glibc2.12-x86_64 mysql
编辑my.cnf(新建的)
vim /etc/my.cnf
内容如下:

[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8
socket=/usr/local/mysql/mysql.sock
[client]
default-character-set=utf8
socket=/usr/local/mysql/mysql.sock
[mysqldump]
socket=/usr/local/mysql/mysql.sock
[mysqladmin]
socket=/usr/local/mysql/mysql.sock
[mysql.server]
user=mysql
basedir=/usr/local/mysql
[mysqld]
#skip-name-resolve
#设置3306端口
port = 3306
socket=/usr/local/mysql/mysql.sock
# 设置mysql的安装目录
basedir=/usr/local/mysql
# 设置mysql数据库的数据的存放目录
datadir=/usr/local/mysql/data
# 允许最大连接数
max_connections=1000
# 服务端使用的字符集默认为8比特编码的latin1字符集
character-set-server=utf8
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
#lower_case_table_name=1
max_allowed_packet=64M


进入mysql安装目录
cd /usr/local/mysql
chown -R mysql:mysql ./ 修改当前目录拥有着为mysql用户
安装数据库
./bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql/ --datadir=/usr/local/mysql/data/
注意这个临时密码后面会用到一次 [Note] A temporary password is generated for root@localhost: wrKQhKz&n1OJ


chown 777 /etc/my.cnf
赋值启动脚本到开机目录
cp ./support-files/mysql.server /etc/rc.d/init.d/mysqld
chmod +x /etc/rc.d/init.d/mysqld
将mysqld服务加入到系统服务
chkconfig --add mysqld
检查mysqld服务是否已经生效
chkconfig --list mysqld
结果
mysqld 0:off 1:off 2:on 3:on 4:on 5:on 6:off
表明mysqld服务已经生效,在2、3、4、5运行级别随系统启动而自动启动,以后可以使用service命令控制mysql的启动和停止

此时可以启动mysql
启动与停止mysql的命令:
service mysqld start和service mysqld stop

将export PATH=$PATH:/usr/local/mysql/bin 加入到 /etc/profile 文件的最后
使文件生效
source /etc/profile

以root身份登录mysql
mysql -uroot -p
注意输入刚才的临时密码
更改root的密码以及权限
SET PASSWORD FOR 'root'@'localhost' = PASSWORD('123456');
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456' WITH GRANT OPTION;

 

创建数据库
create database mantis;
2,使用数据库
   use mantis;
//创建mantis用户并设置密码123456
GRANT All ON mantis.* TO 'mantis'@'%' IDENTIFIED BY '123456';

quit;


防火墙开放3306端口
firewall-cmd --add-port=3306/tcp
firewall-cmd --permanent --add-port=3306/tcp
firewall-cmd --reload
firewall-cmd --query-port=3306/tcp

 

 

 

============================Windows版 Mysql 5.7.28=====================

++ 参考了 https://www.cnblogs.com/liuxiaoji/p/9778212.html

++             https://blog.csdn.net/codingforhaifeng/article/details/80675498

++ 若是图形化的安装方式,可参考: https://blog.csdn.net/qq_36819281/article/details/84037944

=============

1. 解压缩ZIP包且配置环境变量 PATH=%PATH%;D:\Program Files\mysql-5.7.28-winx64\bin

2. 此时解压后的文件中没有data目录和ini文件,创建my.ini文件

[mysqld]
port = 3306
basedir=D:\Program Files\mysql-5.7.28-winx64
datadir=D:\Program Files\mysql-5.7.28-winx64\data
max_connections=200
character-set-server=utf8
default-storage-engine=INNODB
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
[mysql]
default-character-set=utf8

3.以管理员身份运行CMD,cd  D:\Program Files\mysql-5.7.28-winx64\bin 下,执行命令 mysqld -install

 

 

 继续执行命令: mysqld --initialize-insecure --user=mysql  , 该命令会创建data目录及其root用户

.启动mysql命令:net start mysql

登录MySQL命令:mysql -u root -p 密码为空,直接按Enter键进入

 

 

 

 若要改密码,参考上面的5.6.24的说明。

 

posted on 2015-11-26 19:17  梦相随1006  阅读(2853)  评论(0编辑  收藏  举报