01 安装Mysql

  在官网https://dev.mysql.com/上找到自己需要的版本并执行安装

sudo apt-get install mysql-server-5.7

02 运行和退出

# 运行
mysql
# 退出,三种方法
exit
quit
Ctrl+D

  注:退出mysql是exit或quit,而退出python是exit()或quit(),而mysql和python退出都可以用Ctrl+D

03 目录结构

/etc/mysql/my.cnf		配置文件*
/usr/bin			客户端程序脚本
/usr/sbin			mysqld服务器
/var/lib/mysql			日志文件,数据库*
/usr/share/doc/packages		文档
/usr/include/mysql		包含头文件
/usr/lib/mysql			库
/usr/share/mysql		错误消息和字符集文件
/usr/share/sql-bench		基准程序

04 打开关闭服务

sudo /etc/init.d/mysql start
sudo /etc/init.d/mysql stop
sudo /etc/init.d/mysql restart

  注:安装好mysql后,自动设置为开机启动

05 设置root密码

  安装完成后,默认root密码为空,以root身份登录(不用输入密码,即可登录),并指定当前数据库为mysql。

# root登录
$ sudo mysql -u root -p
# 指定当前数据库
mysql> use mysql
# 更新密码为Chengl139!
mysql> update user set authentication_string=PASSWORD("Chengl139!") where User='root';
# 更新所有者权限
mysql> update user set plugin="mysql_native_password";
# 刷新
mysql> flush privileges;
# 退出
mysql> quit;
# 重启
$ sudo /etc/init.d/mysql restart
# 登录
mysql -u root -p

  此时如果不输入密码,则会提示:

  ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)

  输入密码登录

$ mysql -u root -pChengl139!

06 修改配置文件,设置默认编码为utf8

$ sudo vi /etc/mysql/my.cnf
# 设置默认编码为utf8,只需要把后面两句拷贝到文件最后即可。
[mysqld]
character_set_server=utf8
init_connect='SET NAMES utf8'
bind-address=0.0.0.0
# 最后一行也可设置为当前主机的IP

  如果远程访问不了,则做如下操作:

$ cd /etc/mysql/mysql.conf.d
$ vi mysqld.cnf

  找到:bind-address = 127.0.0.1

  改为:bind-address = 0.0.0.0

  并在后面加上:

character_set_server=utf8
init_connect='SET NAMES utf8'

07 授权

  赋予主机访问数据库的权限,开发环境可以授予任何用户都可以有所有权限,但在生产环境时,需要对指定用户授权。

$ sudo mysql -uroot -pChengl139!
mysql> grant all privileges  on *.* to root@'%' identified by "Chengl139!";
mysql> FLUSH PRIVILEGES;

08 查看数据库mysql下的user表中的主机,用户和密码字段。可以看到%号的主机,即密码为Chengl139!的root账号,在任何机器上都可以登录数据库。

mysql> select Host,User,authentication_string from mysql.user;

09 退出mysql,重启mysql数据库

mysql> exit
$ sudo /etc/init.d/mysql restart

10 mysql常用命令

10.01 显示数据库

mysql> SHOW DATABASES;

10.02 创建数据库(创建名为student数据库)

mysql> CREATE DATABASE student CHARACTER SET UTF8 COLLATE UTF8_GENERAL_CI;

10.03 删除数据库(删除名为student数据库)

DROP DATABASE student;

10.04 切换数据库(切换到student数据库)

mysql> USE student;

10.05 查询数据库端口号

mysql> SHOW VARIABLES LIKE "PORT";

10.06 创建用户

  命令格式: CREATE USER 'username'@'host' IDENTIFIED BY 'password';

  username:要创建的用户名

  host:指定该用户在哪个主机上可以登录,如果是本地用户可以用localhost,如果想让该用户在任意远程主机上可以登录,则用通配符"%"

  password:指定该用户的登录密码

mysql> CREATE USER 'chen'@'%' IDENTIFIED BY 'cgl139';

10.07 显示用户

mysql> select Host,User,authentication_string from mysql.user;

10.08 删除用户

  命令格式: DROP USER 'username'@'host';

  username:要删除的用户

  host:该用户在哪台主机上可以登录

mysql> DROP USER 'chen'@'%';

10.09 用户授权

  命令格式:GRANT privileges ON databasename.tablename TO 'username'@'host'

  privileges:用户的操作权限,如SELECT,INSERT,UPDATE等,如果要授予所的权限则使用ALL

  databasename.tablename:数据库.表名;可以用通配符*.*

  如果要被授权的用户可以给其它用户授权,则在末尾加上WITH GRANT OPTION。

mysql> GRANT ALL ON school.* TO 'chen'@'%' WITH GRANT OPTION;
mysql> flush privileges;	# 授权之后要刷新数据库
mysql> show grants for chen;	# 显示用户权限

10.10 创建表

10.11 删除表

10.12 显示当前数据库中所有表

  命令格式:select table_name from information_schema.tables where table_schema='databasename';

mysql> select table_name from information_schema.tables where table_schema='student';

05 部署mysql关系数据库的更多相关文章

  1. CentOS 7.x下安装部署MySQL 8.0实施手册

    MySQL 8 正式版 8.0.11 已发布,官方表示 MySQL 8 要比 MySQL 5.7 快 2 倍,还带来了大量的改进和更快的性能! 一.  Mysql8.0版本相比之前版本的一些特性 1) ...

  2. 在 CentOS7 上部署 MySQL 主从

    在 CentOS7 上部署 MySQL 主从 通过 SecureCRT 连接至 MySQL 主服务器: 找到 my.cnf 文件所在的目录: mysql --help | grep my.cnf 一般 ...

  3. 2.快速部署MySQL主从复制

      1.快速部署MySQL主从复制 [root@mysql ~]# mysql -uroot -p123456 -S /data/3307/mysql.sock -e "show slave ...

  4. 【Linux】Centos部署MySQL

    将CentOS部署MySQL需要本地配置环境.本地编译MySQL,耗时较长的情况,优化为编译成型MySQL并打包,推送并按配置部署. 首先需要在一台机器配置好环境,搭个YUM源,并将所需要的包取出备用 ...

  5. docker-compose部署mysql无法访问

    docker-compose部署mysql无法访问 这个问题困扰了我很久,当使用docker-compose部署mysql之后,进行容器后,使用mysql -u root -p 是可以访问的,而使用s ...

  6. 部署MySQL自动化运维工具inception+archer

    ***************************************************************************部署MySQL自动化运维工具inception+a ...

  7. 快速部署MySQL数据库

    一.下载对应的软件版本 下载地址:http://mirrors.sohu.com/mysql/MySQL-5.6/ [root@localhost ~]# wget -q http://mirrors ...

  8. docker stack 部署 mysql 5.6

    =============================================== 2018/7/1_第1次修改                       ccb_warlock === ...

  9. 打通版微社区(2):服务器部署MySql数据库 For DZ3.2

    写在前面:单独写部署MySql原因是,我这边的应用数据库都是独立存在的,数据与应用分别部署在不同的服务器.另外我也没有实际部署MySql的经验,特意写一篇日志,张记性.安装MySql参考了http:/ ...

随机推荐

  1. c#winform自定义窗体,重绘标题栏,自定义控件学习

    c#winform自定义窗体,重绘标题栏 虽然现在都在说winform窗体太丑了,但是我也能尽量让桌面应用程序漂亮那么一点点话不多说,先上图 重绘标题栏先将原生窗体设置成无边框,FormBoderSt ...

  2. logback日志的基本使用

    logback的日志使用,有两种方式,可以在application.yml文件中配置,不过最常见的还是用一个单独的xml配置文件进行配置: 一.application.yml配置方式 logging: ...

  3. Object类、日期时间类、system类及StringBuilder字符串容器

    一.Object类常用API 1.1 概述 java.lang.Object类是Java语言中的根类,即所有类的父类.Object类中描述的所有方法子类都可以使用.在对象实例化的时候,最终找的父类就是 ...

  4. 13 年的 Bug 调试经验总结 【转载】

    在<Learning From Your Bugs>一文中,我写了关于我是如何追踪我所遇到的一些最有趣的bug.最近,我回顾了我所有的194个条目(从13岁开始),看看有什么经验教训是我可 ...

  5. #6499. 「雅礼集训 2018 Day2」颜色 [分块,倍增,bitset]

    bitset压位,因为是颜色数,直接倍增,重合部分不管,没了. // powered by c++11 // by Isaunoya #include <bits/stdc++.h> #d ...

  6. SP7258 SUBLEX - Lexicographical Substring Search - 后缀自动机,dp

    给定一个字符串,求本质不同排名第k小的子串 Solution 后缀自动机上每条路径对应一个本质不同的子串 按照 TRANS 图的拓扑序,DP 计算出每个点发出多少条路径 (注意区别 TRANS 图的拓 ...

  7. 使用pip安装Python库超时解决办法

    如果在国内安装Python库,强烈推荐使用豆瓣的源http://pypi.douban.com/simple/ 可以这样使用 pip install -i http://pypi.douban.com ...

  8. Dijkstra+SPFA 模板

    Dijkstra 引用自:点击打开链接 #include <algorithm> #include <cstdio> #include <cstring> #inc ...

  9. C# 工具类LogHelper

    一.创建一个WinForm的项目,并通过NuGet安装log4net. 二.创建LogHelper类以及log4net.config配置文件. 三.编写相关代码. 1.LogHelper类 using ...

  10. MVC开发模式以及Smarty模板引擎的使用

    Linux 全局安装 composer 将目录切换到/usr/local/bin/目录 cd /usr/local/bin/ 在 bin 目录中下载 composer curl -sS https:/ ...