本文共 4362 字,大约阅读时间需要 14 分钟。
//******************************************安装
//**********************正常安装的流程是这样*******************************//
1.使用 mysqld -remove MySQL 命令先卸载它。2、运行命令窗口(以管理员方式打开)
3、输入:mysqld --initialize --user=mysql --console,成功的话会生成随机密码,注意记录下生成的密码,第一次进入mysql会用到
4、输入:mysqld --install MySQL --defaults-file="D:\mysql-8.0.19-winx64\my.ini",其中MySQL是服务名
5、输入:net start mysql,启动mysql服务
6、输入:mysql -uroot -p,然后输入上面生成的密码,进入mysql欢迎界面
7、修改root密码,输入:alter user root@localhost identified by '新密码';(sql语句一般要以分号结尾)
8、为了可视化管理数据库,一般采用第三方软件,如Navicat Premium,可自行下载安装。
dos下按此步骤装到登录数据库时,如果装完提示不能连接可能时由于data文件夹中内容可能设置不对(除data文件夹下文件夹的内容都替换),
这时stop数据库替换其data文件夹为其他正常的data文件夹,其中数据库可直接拷贝,然后再启动数据库登录即可。其中密码是正常data文件夹数据库的密码。 //**********************当正常安装总提示连接不上的错误(具体错误有很多原因待理清)时需要这样安装*******************************// 解压mysql ,配置好环境变量,删除data文件夹,不用手动配置my.ini,这里用默认的。 1、mysqld -remove MySQL //清除旧的数据库安装 2、mysqld --initialize --user=mysql --console //产生的密码需要记住 3、mysqld --install MySQL //安装 4、net start mysql //启动 5、mysql -uroot -p //Enter password: **** 使用产生的密码登陆 6、alter user root@localhost identified by '123'; //修改密码为123,成功的话会提示Query OK, 0 rows affected (0.01 sec) 7、 \quit //退出mysql 8、net stop mysql //停止mysql服务 9、net start mysql //重新启动mysql服务 10、mysql -uroot -p //使用新密码登陆 11、show databases; //查看所有数据库//**************按照上面步骤连接时命令提示符下登录提示系统错误2的原因和解决办法********************************
启动不了mysql服务,提示系统错误2,找不到指定文件,我在网上找了资料,我的错误原因是“服务的路径和安装的路径不一致”,通过修改注册表解决的,
首先打开注册表
win+r打开运行,输入regedit,打开注册表
更改注册表:找到
HKEY_LOCAL_MACHINE-SYSTEM
-CurrentControlSet
-services-mysql(服务名)
-ImagePath
把:"C:\Program Files\MySQL\bin\mysqld" --defaults-file="C:\Program Files\MySQL\my.ini" mysql 改为自己安装的实际路径。例如:"D:\mysql-8.0.19-winx64\bin\mysqld" MySQL
//**********************已有data文件,需要迁移data时需要这样安装*******************************//
1、mysqld --initialize 2、mysqld --install MySQL 3、net start mysql 4、mysql -uroot -p //输入已有data的数据库的配置密码登陆 5、show databases; //**********************************************代码连接问题******************* 非常重要:在vs的项目里用nuget下载mysql.data.dll,选择安装MySql.Data.6.9.12的版本。然后在项目集的pages里可以找到lib文件夹下 的dll文件,把这个dll放到debug里即可使用,dll版本问题很重要,不对的话会产生很多莫名其妙的东西(出现问题首先排除版本问题)。 1、Client does not support authentication protocol requested by server; conside //增加验证类型 ALTER USER 'root'@'localhost' IDENTIFIED BY '12345678' PASSWORD EXPIRE NEVER; ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '12345678'; FLUSH PRIVILEGES; //查看登陆验证表 use mysql; select user,host,plugin from user where user='root';select user,host,plugin from user where user='root';//查看登陆验证类型
//********************以下my.ini的问题*********************************** my.ini中去除以下才能正常 # 默认使用“mysql_native_password”插件认证 default_authentication_plugin=mysql_native_password skip_ssl skip-name-resolve //************完整的正常的.ini文件**************** [mysql] # 设置mysql客户端默认字符集 default-character-set=utf8 [mysqld] #设置3306端口 port = 3306 # 设置mysql的安装目录 basedir=D:\mysql-8.0.19-winx64 # 设置mysql数据库的数据的存放目录 datadir=D:\mysql-8.0.19-winx64\data # 允许最大连接数 max_connections=200 # 服务端使用的字符集默认为8比特编码的latin1字符集 character-set-server=utf8 # 创建新表时将使用的默认存储引擎 default-storage-engine=INNODB//**************************************常用命令
CREATE DATABASE IF NOT EXISTS GMFast240;//创建数据库
DROP DATABASE IF EXISTS test_db_del;//删除数据库 Create table Table2 (Select * from Table1);//新建一个表从table1中所有数据 alter table table1 add pid int unsigned not null auto_increment primary key;//添加主键 update table1 set pid=0 where pid=6; insert table1 (transactor,name_new,pid) values("xiaohong","hahha",0); select max(RangeIndex) from Package_tbl//查找最大值//*********************
string sqlStr = "select max(RangeIndex) from Package_tbl"; DataTable res = dtb.SelectSQL(sqlStr); int maxIndex = Convert.ToInt32(res.Rows[0][0]); maxIndex +=1;ALTER TABLE table_name DROP COLUMN field_name;//删除列
//********************************* alter table IMBIBITION_tbl add column INJECT_SPEED_AIR INT not null after AIR_COLUMN; alter table IMBIBITION_tbl add column AIR_COLUMN_INJECT INT not null after INJECT_SPEED_AIR;//指定字段后加入字段 ALTER TABLE contacts ADD email VARCHAR(60) FIRST;//表最前加入字段 ALTER table Section_tbl ADD column RangeIndex INT not null;//创建一张表
Create table Users(Name VARCHAR(20) NOT NULL,Password VARCHAR(20) NOT NULL,Purview INT NOT NULL); Create table Users(Name VARCHAR(20) NOT NULL,Password VARCHAR(20) NOT NULL,Purview INT NOT NULL,UpdateTime DATETIME); //删除一个表 DROP TABLE tb_emp3;转载地址:http://ijlws.baihongyu.com/