MySQL教程: 从环境搭建到使用

前言

 

下载MySQL

(Mysql的官网-->https://www.mysql.com/

选中社区版就行,另一个企业版本要收费的。

选择 server

下图是下载安装版本的,也可以下载免安装版本,两者都是一的。

 

如果是免安装版,则选这个:

若是 mysql-5.0,则下载这个:

 

若是ubuntu服务器,可选这个:

 

可能会提示注册账号,不过,不用管它,直接点击"No thanks, just start my download"下载就行。

不过,由于是国外的网站,非常的慢。

安装

安装版

我下载的是引导安装exe。一不小心,就全部安装了。

我选择的是默认安装,好像把一整套工具都装了,包括 Workbench,如下:

安装没什么特别的,一路next就行。

免安装版

不能放在中文目录下。比如放在 C:\mysql

不设置环境变量也是可以,直接调用绝对地址就行。

加环境变量的方法:

再在PATH里加多一个路径,

 

最后,bin目录下,新建一个批处理文件,以方便启动,具体方法参见附件。

接下来的操作,都是在免安装版的基础下进行的。

因为免安装的方式,不但可以跨平台使用方法相同,更重要的是,可以直接打包到工程或发行包里。一般情况下,实际使用时,能打包成一个包就打包成一个包吧,这样,用户使用起来方便,不用再去安装环境什么的。

ubuntu下安装方法:

1.先解压,命令如下:

mkdir mysql-5.0.96

tar -zxvf mysql-5.0.96-linux-x86_64-glibc23.tar.gz -C mysql-5.0.96/

可以先不加入环境变量里,若要运行,直接使用绝对路径命令运行就行。

 

配置

以下参考自: https://www.cnblogs.com/zhangkanghui/p/9613844.html

生成data文件:

进入安装目录(由于没有设置环境变量),输入命令:(非管理员权限即可)

mysqld --initialize-insecure --user=mysql 

mysql5.0 是不支持这个命令的,输入命令会出错,而且,因为mysql5.0已经有data这个文件夹了,所以,不需要输入这个命令了,跳过这一步。

功能是:在 C:\mysql\mysql-8.0.22-winx64\ 目录下生成data目录

 安装MySQL:

输入命令:mysqld -install

这句命令必须要有管理员权限才可以。

如果已经装过其它版本了,可以用命令 mysqld -remove 先删除。

启动服务

输入命令:net start MySQL

这句命令必须要有管理员权限才可以,而且,用小写字母也是可以的。

相对应的,也有停止命令:

mysql5.0 时遇到了一个问题:发生系统错误 1067

解决方法:

参考: https://www.cnblogs.com/ydwzhang/p/10995366.html

mysql-5.0.96-winx64 路径下新建一个my.ini文件,里面填入:

#########################################################
[client]
port=3306
default-character-set=utf8
[mysqld]
port=3306
character_set_server=utf8
basedir=C:\mysql\mysql-5.0.96-winx64
#解压目录
datadir=C:\mysql\mysql-5.0.96-winx64\data
#解压目录下data目录
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
[WinMySQLAdmin]
C:\mysql\mysql-5.0.96-winx64bin\mysqld.exe
#########################################################

然后再次运行命令就不会再有这个错误啦。

登录MySQL

登录mysql:(因为之前没设置密码,所以密码为空,不用输入密码,直接回车即可)

mysql -u root -p

(非管理员权限即可)

设置密码

(设置密码见附件)

退出

mysql> quit

重置

如果遇到问题无法解决,那就重新再来一吧。把前面步骤生成的data文件夹删掉行。如果删不掉,提示正在使用,那就使用使用 net stop mysql 关掉它。

从这一点也可以看出,mysql是开机自动启动的。前面的配置流程就要再走一遍。

ubuntu下的配置

进入目录 mysql-5.0.96/mysql-5.0.96-linux-x86_64-glibc23/  执行命令 : ./configure

在 mysql-5.0.96/ 新建一个文件 mysql.sh ,内容为:(只需修改 MYSQL_HOME 的值)

#!/bin/bash
# Path to mySQL
MYSQL_HOME="/home/ubuntu/mysql-5.0.96/mysql-5.0.96-linux-x86_64-glibc23"

# Check for required environment variables.
if [ -z "$MYSQL_HOME" ];
then
echo Error: MYSQL_HOME environment variable is not set.
exit 2
fi
# paser command params
case "$1" in
start)
#/var/run/mysqld/mysqld.sock
if test -e $MYSQL_HOME/mysqld.sock
#$MYSQL_HOME/bin/mysqladmin ping --socket=$MYSQL_HOME/mysqld.sock >nul 2>&1
then
echo MySQL already Start!
else
exec $MYSQL_HOME/bin/mysqld --no-defaults --user=james --basedir=$MYSQL_HOME --character-sets-dir=$MYSQL_HOME/share/charsets --language=$MYSQL_HOME/share/english --character-set-server=gb2312 --socket=$MYSQL_HOME/mysqld.sock
fi
;;
stop)
if test -e $MYSQL_HOME/mysqld.sock
#$MYSQL_HOME/bin/mysqladmin ping --socket=$MYSQL_HOME/mysqld.sock >nul 2>&1
then
echo please input mysql user name:
read name
echo please input mysql password:
read password
exec $MYSQL_HOME/bin/mysqladmin shutdown --user=$name --password=$password --socket=$MYSQL_HOME/mysqld.sock
fi
;;
*)
echo "Usage: mysql.sh {start|stop}"
;;
esac
exit 0 

接着,执行命令 ./mysql.sh

但是出现了一个问题:/bin/bash^M: bad interpreter: No such file or directory

解决方法:

shell脚本格式必须是unix才行,但我这个脚本是在windows上编写完成传到Linux服务器上的,所以一执行就报错。

notepad++设置为

再新建一个文件,就是 unix格式的了,这个问题就可以解决啦。

再输入

./mysql.sh start &

或者

./mysql.sh start

即可启动 mysql 服务。

 

登陆mysql

输入命令: ./mysql -u root -p

但是又出现了一个问题:ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)

解决方法:

换成命令 mysql -uroot -h 127.0.0.1 -p

参考:https://www.jb51.net/article/174244.htm

 

然后其它命令就和window下的命令是一样的了。

 

 

使用sql脚本

当然,可以在cmd窗口直接输入,如下图,

(create database 数据库名称;来创建)

但有更好的方式,可以写成脚本的方式,如下:

hello world.sql 文件:

create database test; #创建一个名为test的数据库。

run_sql.bat 文件:(安全起见,也可以先不把密码写在批处理里)

C:\mysql\mysql-8.0.22-winx64\bin\mysql -h localhost -u root -p123456 < "C:/mysql/hello world.sql"
pause

因为sql服务是默认开机启动的,所以一旦安装完,配置好之后,直接登陆就可以了,所以可以直接使用以上的 *.bat 批处理。

mysql中如何写注释

SELECT6+6;#这是单行注释

SELECT8+8;-- 这是单行注释 (注意:--后面要加一个空格,一定要记住)

SELECT15/* 这是一个在行中间的注释 */+2;

 

多版本问题

比如,JPress 要求只支持 mysql 5.6 或 5.7 版本。那么,我们可以装多一个版本,然后当前想使用那一个版本,就把环境变量的路径改成对应的即可。

 

数据库复制

比如想把 sitescms 数据库从window下复制倒ubuntu服务器上,方法如下,把data目录下的 sitescms 文件夹复制到 ubuntu 服务器 data 目录下即可。

 

附件1:WIN7右键在目录当前打开命令行Cmd窗口:

按住“shift”键,再右键就会出现“在此处打开命令窗口”的选项,如下:

当要用管理员权限打开,那又该怎么办呢?

新建一个文件,命名为: 在此处打开命令窗口.bat

内容为:

c:
cd C:\mysql\mysql-8.0.22-winx64\bin
cmd

附件2:设置密码

设置密码

mysql> set password for root@localhost = password('123456');

但是出现了一个问题,如下:

意思是:在sql语句第1行有个语法错误。

改成大写就行了,一般情况下,sql关键字都是大写的。

mysql> SET PASSWORD FOR root@localhost = '123456';

扩展:

让外部可以访问root用户,如果是的话,要用SET PASSWORD FOR root@'%' = '123456';

也要以简化成  mysql> SET PASSWORD = '123456';

 

如果是 mysql5.0,操作方法就要变一下:

(ubuntu下的操作方法也是一样的,验证过了。)

刚安装完成时root账号默认密码为空,此时可以将密码修改为指定的密码。如:123456。
    c:>mysql –uroot
    mysql>show databases;
    mysql>use mysql;
    mysql>UPDATE user SET password=PASSWORD("123456") WHERE user='root';
    mysql>FLUSH PRIVILEGES;
    mysql>QUIT

如下图:

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值