设为首页 收藏本站
查看: 680|回复: 0

[经验分享] mysql之mysql安装、初始化,以及mysql相关命令的使用

[复制链接]

尚未签到

发表于 2018-9-28 06:46:05 | 显示全部楼层 |阅读模式
  安装mysql:
  1.yum
  #wget http://dev.mysql.com/get/mysql-community-release-el7-5.noarch.rpm 从mysql官网上下载mysql的repo
  #yum -y install mysql-server
  2.二进制源码包
  #tar -xf mysql-xxx.tar.bz2
  #cd mysql-xxx
  #make && make install
  3.源码编译安装
  参见lamp中mysql的安装。
  mysql初始化配置过程:
  安装完毕后必须要进行初始化配置。
  运行scripts/mysql_install_db脚本,完成初始化。
  或者执行mysql_install_db命令完成初始化。
  1.找配置文件my.cnf
  my.cnf在多个目录中存在,mysql启动是会按照如下次序寻找配置文件,多个配置文件中的选项若有相同,则以最后一个包含该选项的配置文件内容为准。
  类unix系统上:
  /etc/my.cnf
  /etc/mysql/my.cnf
  $MYSQL_HOME/my.cnf mysql实例目录中,mysql可以运行多个实例,多个文件夹中的mysql只要监听在不同端口上即可。
  --defaults-extra-file=FILE  mysql启动时指定选项--default-extra-file,手动指定配置文件。
  ~/.my.cnf 用户家目录下的隐藏文件
  win系统上:
  %WINDIR%\my.ini,%WINDIR%\my.cnf
  c:\my.ini,c:\my.cnf
  %INSTALLDIR%\my.ini,%INSTALLDIR%\my,cnf
  --defaults-extra-file=DIR mysql启动时指定选项--default-extra-file,手动指定
  2.自动生成以下数据库:
  mysql
  存放数据库账号,权限等等相关信息。
  information_schema
  mysql运行中产生的运行时数据在内存中的信息。
  performance_schema
  存放收集到的服务器性能参数。5.5后新增PERFORMANCE_SCHEMA引擎。
  初始化后的配置:
  1.更改默认账号和密码:
  mysql初始化后会生成5个空密码的用户:
  3个root账号:
  root@127.0.0.1
  root@localhost
  root@HOSTNAME
  2个匿名账号:
  “@localhost
  ”@HOSTNAME
  删除匿名用户,给root用户设置密码。
  2.启用二进制日志和独立表空间
  二进制日志:
  服务启动时指定参数--log_bin=mysql-bin和--binlog_format=MIXED
  独立表空间:
  mysql>set global innodb_file _per_table=1
  mysql通信:
  mysql是客户端程序,mysqld是服务端程序
  若myslql和mysqld在同一个类unix主机上,则二者通信是使用mysql.sock完成进程间通信。
  若在同一个win主机上,则通过共享内存或者是管道完成通信。
  若不在同一个主机上,则通过tcp/ip通信。注意,即便在同一个主机上,一旦HOST指定为ip地址不是本地,则mysql也是会使用tcp/ip来通信的。
  客户端工具:
  都受到配置文件中[client]的设定,而且选项上大体相同。
  mysql
  mysqlimport
  mysqldump  备份工具
  mysqladmin 管理工具
  mysqlcheck 检查数据库完整性。
  非客户端组件
  myisamchk 检查myisam表
  myisampack 压缩myisam表
  服务器端工具:
  mysqld  mysql服务器端程序
  mysqld_safe  安全线程的mysqld服务器程序
  mysqld_mulit 支持多实例的mysqld服务器程序
  mysql客户端工具:
  #mysql [OPTION]
  [OPTION]
  -A --noauto-rehash --disable-auto-rehash 禁用名称补全
  -u --user USERNAME 不指定默认为root
  -p --password 'PASSWORD' 不指定默认为空
  -h HOSTNAME 不指定默认为localhost
  --protocol PROTO 指定协议,只有tcp是协议,剩下socket 、memory、pipe其实都是通信机制。默认不指定使用socket。
  --port PORT 指定端口。配合--protocol选项使用。不指定端口默认使用socket方式,同时也要看客户端和服务端是否为统一主机。
  -D --database DBNAME 设定默认数据库
  --compress 压缩所有的客户端和服务器之间的传输数据
  --ssl-ca=FILE 指定ca证书文件
  --ssl-capath=DIR   若有多个信任ca,则将所有证书放在一个目录中。
  --ssl-cert=FILE 指定自己的证书
  --ssl-cipher=CIPHER_LIST 指定加密算法列表
  --ssl-key=FILE 指定自己的秘钥文件
  --ssl-verify-erver-cert 是否验证服务器端证书,默认是off 。
  -H --html 以html格式输出表
  -X --xml 以xml格式输出表
  -e “STATMENT” 执行对应mysql语句
  #mysqladmin [OPTION] COMMAND [ARG] [COMMAND[ARG]] ...
  [OPTION]
  和mysql类似
  COMMAND
  paasowrd ‘PASSWD’ 设定密码为PASSWD
  create DBNAME 创建数据库名为DBNAME
  debug 发送相关信息到错误日志
  drop DBNAME 删除名为DBNAME的数据库
  ping 测试mysql服务器是否在线
  processlist 显示正在执行的进程(线程)列表
  status 显示mysql服务器的状态
  --sleep SEC 指定间隔秒数为SEC
  --count NUM 指定显示的总次数
  extended-status  显示服务器的状态变量
  variables 显示服务器的服务变量
  flush-hosts 刷新主机相关的信息。服务器会记录相关信息,会对主机做相应的限制,比方尝试次数太多就禁止登陆,防止***。刷新后即可正常登陆。
  flush-logs 刷新日志,实现二进制和中继的日志滚动
  flush-privileges 让服务器重读授权表
  flush-tables 关闭所有打开的表
  flush-threads 重置线程池,清除空闲线程
  flush-status 重置大多数的状态变量

  >  reflush 等同于flush-hosts 和flush-logs同时执行
  shutdown 关闭mysql服务器进程。
  version 显示mysql服务器的版本号及相关信息。
  start-slave 启动复制,启动从服务器的复制线程
  SQL thread
  IO thread
  stop-slave 关闭复制,停止从服务器的复制线程
  其他客户端工具:
  phpMyAdmin
  Workbench
  MySQL Front
  mysql的工作模式:
  交互式模式:
  mysql>
  客户端命令
  仅在客户端上执行。
  服务器端命令
  命令发送到服务器端,服务期执行后将结果返回到客户端。都必须使用语句结束符,默认为分号(;)。
  批处理模式(脚本模式):
  mysql < FILE.sql 直接载入sql脚本
  交互模式下也能载入脚本:
  mysql>source|\. FILE.sql
  mysql的命令模式:
  客户端命令:
  clear(\c) 提前终止语句执行
  status(\s) 显示状态
  delimiter(\d)STRING 设定语句结束符为STRING
  connect (\r)重新连接数据库,并显示连接id号和当前默认数据库
  ego(\G)忽略语句结束符,直接送到服务器执行,而且结果以竖排方式显示。
  go(\g)忽略语句结束符,直接送到服务器执行
  quit(\q)退出
  source (\.) 执行sql脚本
  system(\!)执行shell命令
  warnings(\W)语句执行结束后,若有警告信息则显示
  nowaring(\w) 语句执行结束后,不显示警告信息
  prompt(\R)修改提示符
  rehash(\#) 对于新建的对象,启用名称补全功能
  服务器语句:
  使用语句结束符分号结尾。可以自定义。
  help KEYWORD 获取KEYWORD的帮助信息。
  交互模式下的提示符:
  mysql> 可以输入
  -> 语句未结束,可以继续输入
  '> 缺少单引号的后一半
  "> 缺少双引号的后一半
  `> 缺少反引号的后一半
  /*> 缺少多行注释的后一半
  启动mysql服务
  #service mysqld start
  或者
  #mysqld_safe &
  mysql配置文件:
  配置文件查找顺序:
  /etc/my.cnf -->
  /etc/mysql/my.cnf -->
  $BASEDIR/my.cnf -->
  $BASEDIR为mysql实例的运行目录,一般为安装目录。
  $DATEDIR/my.cnf -- >数据目录下。
  ~/.my.cnf 用户家目录。
  最终配置以最后一个为准,后一个配置文件会覆盖前一个配置文件。
  查看配置文件可使用的参数和默认值:
  #mysqld --help --verbose
  my.cnf
  集中式配置文件,可以为多个程序提供配置。
  格式:
  [mysql]
  xxxx
  [mysqld]
  xxxx
  [client]
  xxxx
  /etc/my.cnf
  [mysqld]
  port =3306
  socket =/tmp/mysql.sock
  thread_concurrency=8 线程并发量,cpu的个数*2
  datadir=/var/lib/mysql 指定数据位置。
  ~/.my.cnf:
  假设mysql只允许本地账户登陆,用户在登陆时不想输入账号密码,可以使用以下方法:
  #vim ~/.my.cnf
  [client]
  user = 'root'
  password = 'PASSWD'
  host = 'localhost'
  注意:此方法会有安全性隐患,谨慎使用。
  mysql无法启动的解决方法:
  mysql会在数据目录DATADIR中生成一个HOSTNAME.err的错误日至文件。
  1.无法启动,也无法找到HOSTNAME.err文件
  数据目录DATADIR指向错误,修改配置文件更正目录。
  #vim /etc/my.cnf
  datadir=DATADIR
  2.此前服务未关闭,端口被占用
  杀死socket文件的所在的进程释放3306端口。
  #ps -aux|grep mysqld
  #kill PID
  3.数据初始化失败
  重新执行初始化脚本
  #cd /usr/local/mysql
  #scripts/mysql_install_db --user=mysql --datadir=/sqld/mdata
  4.数据目录权限问题
  #chmod -R mysql:mysql DATADIR


运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-602970-1-1.html 上篇帖子: mysql安装,及cmake错误,mysql5.5与5.6参数对比 下篇帖子: MySQL错误Incorrect file format解决方案
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表