05 部署mysql关系数据库
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关系数据库的更多相关文章
- CentOS 7.x下安装部署MySQL 8.0实施手册
MySQL 8 正式版 8.0.11 已发布,官方表示 MySQL 8 要比 MySQL 5.7 快 2 倍,还带来了大量的改进和更快的性能! 一. Mysql8.0版本相比之前版本的一些特性 1) ...
- 在 CentOS7 上部署 MySQL 主从
在 CentOS7 上部署 MySQL 主从 通过 SecureCRT 连接至 MySQL 主服务器: 找到 my.cnf 文件所在的目录: mysql --help | grep my.cnf 一般 ...
- 2.快速部署MySQL主从复制
1.快速部署MySQL主从复制 [root@mysql ~]# mysql -uroot -p123456 -S /data/3307/mysql.sock -e "show slave ...
- 【Linux】Centos部署MySQL
将CentOS部署MySQL需要本地配置环境.本地编译MySQL,耗时较长的情况,优化为编译成型MySQL并打包,推送并按配置部署. 首先需要在一台机器配置好环境,搭个YUM源,并将所需要的包取出备用 ...
- docker-compose部署mysql无法访问
docker-compose部署mysql无法访问 这个问题困扰了我很久,当使用docker-compose部署mysql之后,进行容器后,使用mysql -u root -p 是可以访问的,而使用s ...
- 部署MySQL自动化运维工具inception+archer
***************************************************************************部署MySQL自动化运维工具inception+a ...
- 快速部署MySQL数据库
一.下载对应的软件版本 下载地址:http://mirrors.sohu.com/mysql/MySQL-5.6/ [root@localhost ~]# wget -q http://mirrors ...
- docker stack 部署 mysql 5.6
=============================================== 2018/7/1_第1次修改 ccb_warlock === ...
- 打通版微社区(2):服务器部署MySql数据库 For DZ3.2
写在前面:单独写部署MySql原因是,我这边的应用数据库都是独立存在的,数据与应用分别部署在不同的服务器.另外我也没有实际部署MySql的经验,特意写一篇日志,张记性.安装MySql参考了http:/ ...
随机推荐
- RedisDeskTopManager连接时提示:can't nonnect to redis-server
场景 在使用RedisDeskTopManager客户端可视化工具连接Redis服务端时提示: 注: 博客: https://blog.csdn.net/badao_liumang_qizhi关注公众 ...
- go 环境及4开发
国内加速 在gopath目录执行 go env -w GOPROXY=direct go env -w GOSUMDB=off go env -w GOPROXY=https://goproxy.io ...
- gcc 与g++
which gcc 查看gcc 主要针对 .c which g++ 查看g++ 主要针对 .cpp yum install gcc 安装gc ...
- ext4文件系统启动自检的必要性
最近我们发现多个用户设备掉电后重启,系统不工作. 研究这些返修设备,发现这些设备的表象是网络连接失败,DNS resolve不了.进一步发现/etc/resolv.conf为空,所以应用程序没法进行D ...
- Ubuntu P40显卡配置CUDA 10.1,CUDNN 7.6,Conda 5.2.0, Tensorflow-gpu 1.8
1. 安装CUDA 禁用nouveau vim /etc/modprobe.d/blacklist.conf 最后两行加入 blacklist nouveau options nouveau mode ...
- Python中关于日期的计算总结
1.获取当前时间的两种方法: 代码如下: import datetime,timenow = time.strftime("%Y-%m-%d %H:%M:%S")print now ...
- libgdiplus安装配置
1.下载安装包:wget http://download.mono-project.com/sources/libgdiplus/libgdiplus0-6.0.4.tar.gz2.解压缩.编译安装 ...
- WIN10与ubuntu双系统安装教程
按照网上博客的安装教程安装的Win10+Ubuntu16.04双系统安装了好几遍都不成功?启动Ubuntu左上一直有个光标在闪?如果你的电脑也是双硬盘(装Windows系统的固态硬盘+机械硬盘),在安 ...
- Fabric智能合约(base)
这里的智能合约仅包含Init函数和Invoke函数. 为什么一定是这两个方法? 因为在源码中的智能合约模块有这样的接口,如果要完成智能合约的相关编程,就需要实现源码中定义的接口,接口中定义了这两个方法 ...
- pycharm导入python包
总步骤:file --> settings --> poject interpreter --> 点击加号 --> 搜索需要导入的python包 --> 选中需要导入的p ...