• WIndows系统下mysql-noinstall安装配置


    环境:

    Windows
    mysql-noinstall-5.0.37-win32.zip

    一、下载MySQL

    http://www.mysql.com/downloads

    二、安装过程

    1、解压缩mysql-noinstall-5.0.37-win32.zip到一个目录,加入解压缩到E:myserver目录。

    2、编写mysql的运行配置文件my.ini
    my.ini
    -----------------------------
    [WinMySQLAdmin]
    # 指定mysql服务启动启动的文件
    Server=E:\myserver\mysql-5.0.37-win32\bin\mysqld-nt.exe

    [mysqld]
    # 设置mysql的安装目录
    basedir=E:\myserver\mysql-5.0.37-win32
    # 设置mysql数据库的数据的存放目录,必须是data,或者是\xxxdata
    datadir=E:\myserver\mysql-5.0.37-win32\data
    # 设置mysql服务器的字符集
    default-character-set=gbk

    [client]
    # 设置mysql客户端的字符集
    default-character-set=gbk
    -----------------------------

    3、安装mysql服务
    从MS-DOS窗口进入目录E:myservermysql-5.0.37-win32in,运行如下命令:
    mysqld --install mysql5 --defaults-file= E:myservermysql-5.0.37-win32my.ini

    4、启动mysql数据库
    还在上面的命令窗口里面,输入命令:net start mysql5
    这样就启动了mysql服务。

    5、(本地)登录mysql数据库
    还在上面的命令窗口里面,输入命令:mysql -u root -p
    回车后提示输入密码。
    mysql解压缩版初次安装管理员root的密码为空,因此直接再回车一次就登入mysql数据库了。

    如果你不是初次登录mysql,你还拥有网络地址的用户,那么你可以用如下命令登录到mysql服务器,这个mysql服务器也许在远方,也许在本地。这种登录方式叫“远程登录”,命令如下:
    mysql -h 192.168.3.143 -u root -p
    mysql -h 192.168.3.143 -u root -pleizhimin

    -h是指定登录ip,-u指定用户,-p指定密码,-p后如果什么都不写,那么接下来会提示输入密码,-p后也可以直接写上密码,这样就不再需要输入密码了。

    6、操作数据库和表
    登录mysql数据库后,就可以执行指定操作数据库,用命令:use 数据库名
    指定了操作的数据库对象后,就可以操作数据库中的表了,操作方法当然是SQL命令了,呵呵。

    7、更改mysql数据库管理员root的密码
    mysql数据库中默认有个mysql数据库,这个是mysql系统的数据库,用来保存数据库用户、权限等等很多信息。要更改密码,就要操作mysql数据库的user表。

    现在mysql的root用户密码还为空,很不安全的,假设要更改密码为“leizhimin”。

    还在上面的命令窗口里面,执行如下命令:
    use mysql;
    grant all on *.* to root@'%' identified by 'leizhimin' with grant option;
    commit;

    这段命令的含义是,添加一个root用户,拥有所有的权限,密码为“leizhimin”,并且这个用户不但可以本地访问,也可以通过网络访问。强调这个原因是mysql系统自带的的那个root用户只能从本地访问,它@字符后面的标识是localhost。具体可以查看mysql数据的uer表看看,这样以来,就有两个root用户了,一个是系统原来的,一个新建的,为了管理的方便,就将mysql自带root删除,保留刚创建的这个root用户,原因是这个用户可以通过网络访问mysql。

    然后,删除用户的命令:
    user mysql;
    delete from user where user='root' and host='localhost';
    commit;

    其实上面的方法是授权命令,在授权的同时创建了数据库用户。mysql也有单独的修改用户密码的方法,下面看看如何操作。
    首先,先建立一个用户lavasoft,密码为:123456
    grant all on *.* to lavasoft@'localhost' identified by '123456' with grant option;

    接下来就修改这个用户的密码为:leizhimin
    update user set password = password('leizhimin') where user = 'lavasoft' and host='localhost';
    flush privileges;

    说明一点,最好用grant的方式创建mysql用户,尤其对mysql DBA来说,创建用户的同时要指定用户权限,养成好习惯很重要的。

    这个修改方法实际上用的是mysql函数来进行的,还有更多的方法,我就不一一介绍了。
    还要注意一点就是在修改密码等操作的时候,mysql不允许为表指定别名,但是初次在外却没有这个限制。

    8、创建数据库
    实际上mysql数据库中除了mysql数据库外,还有一个空的数据库test,供用户测试使用。
    现在继续创建一个数据库testdb,并执行一系列sql语句看看mysql数据库的基本操作。

    创建数据库testdb:
    create database testdb;

    预防性创建数据库:
    create database if not testdb

    创建表:
    use testdb;
    create table table1(
    username varchar(12),
    password varchar(20));

    预防性创建表aaa:
    create table if not exists aaa(ss varchar(20));

    查看表结构:
    describe table1;

    插入数据到表table1:
    insert into table1(username,password) values
    ('leizhimin','lavasoft'),
    ('hellokitty','hahhahah');
    commit;

    查询表table1:
    select * from table1;

    更改数据:

    update table1 set password='hehe' where username='hellokitty';
    commit;

    删除数据:
    delete from table1 where username='hellokitty';
    commit;

    给表添加一列:
    alter table table1 add column(
    sex varchar(2) comment '性别',
    age date not null comment '年龄'
    );
    commit;

    从查询创建一个表table1:
    create table tmp as
    select * from table1;

    删除表table1:
    drop table if exists table1;
    drop table if exists tmp;

    9、备份数据库testdb
    mysqldump -h 192.168.3.143 -u root -pleizhimin -x --default-character-set=gbk >C: estdb.sql

    10、删除数据库testdb
    drop database testdb;

    11、恢复testdb数据库
    首先先建立testdb数据库,然后用下面命令进行本地恢复:
    mysql -u root -pleizhimin testdb <C: estdb.sql

    12、删除mysql服务
    假如你厌倦mysql了,你需要卸载,那么你只需要这么做

    停止mysql服务
    net stop mysql5

    删除mysql服务
    sc delete mysql5

    然后删除msyql的安装文件夹,不留任何痕迹。

  • 相关阅读:
    3、总结
    三分及小例题
    约瑟夫问题的推导
    对于联通块的处理
    扩展欧几里得与二元不定方程
    js 阻止事件捕获
    原生xhr发送JSON
    $timeout
    Angularjs Ng_repeat中实现复选框选中并显示不同的样式
    为什么用Object.prototype.toString.call(obj)检测对象类型?
  • 原文地址:https://www.cnblogs.com/zhaofeng555/p/4114822.html
Copyright © 2020-2023  润新知