Configuração detalhada de download e instalação do MySQL 5.7 e tutorial de operação do banco de dados MySQL C#
Diretório de artigos
Prefácio
Recentemente, houve um projeto usando MySQL5.7. Encontrei muitos problemas ao instalar o MySQL. Na verdade, existem muitas soluções para os problemas no blog. Vou registrar a operação aqui para facilitar a referência em uso posterior.
A seguir está um tutorial detalhado de download, instalação e configuração do MySQL 5.7.43.
1. Etapas de download
Visite o site oficial: https://www.mysql.com/Vá
até o final da página inicial e selecione MySQL Community server em Downloads
Escolha baixar o arquivo ZIP correspondente de acordo com a versão do seu computador. Meu computador é de 64 bits, então escolha este para fazer o download. Clique em Download para entrar na seguinte interface: Clique em [Não, obrigado, basta iniciar meu download ] para
baixar diretamente sem faça login e espere. Uma janela pop-up de download aparecerá depois de um tempo.
Basta clicar em [ Download ] e iniciar o download
Após o download, descompacte o arquivo na unidade e no diretório onde deseja salvá-lo.
O acima conclui todo o trabalho de download.
2. Configuração de variável de ambiente
1. Clique com o botão direito neste computador->Propriedades->Configurações avançadas do sistema->Variáveis de ambiente->Variáveis de sistema
Clique em Novo , o nome da variável é: MYSQL_HOME e adicione o local da sua pasta mysql-5.7.43-winx64.
O meu está em D:\Program Files\Mysql\mysql-5.7.43-winx64, conforme mostrado na figura:
2.Editar caminho
Copie **%MYSQL_HOME%\bin** para o final do valor original, conforme mostrado na figura:
3. Configure o arquivo my.ini
Crie um novo arquivo my.ini em seu diretório mysql-5.7.43-winx64.
O conteúdo do arquivo my.ini é: Se o diretório de instalação for diferente, lembre-se de modificar o caminho de instalação do MySQL.
[mysqld]
#端口号
port = 3306
#mysql-5.7.43-winx64的路径
basedir=D:\Program Files\Mysql\mysql-5.7.43-winx64
#mysql-5.7.43-winx64的路径+\data
datadir=D:\Program Files\Mysql\mysql-5.7.43-winx64\data
#最大连接数
max_connections=200
#编码
character-set-server=utf8
default-storage-engine=INNODB
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
[mysql]
#编码
default-character-set=utf8
Após a conclusão da criação, prossiga para a próxima etapa.
4.Instale o MySQL
(1) Digite cmd na caixa de entrada e execute-o como administrador . Observe que você deve executá-lo como administrador, caso contrário, o erro de instalação/remoção do serviço ocorrerá durante o processo de instalação devido a direitos de gerenciamento insuficientes. Negado! ( O serviço de instalação/desinstalação foi negado) , isso é muito importante!
(2) Digite o diretório D:\Program Files\Mysql\mysql-5.7.43-winx64\bin no cmd:
Digite o comando de instalação: mysqld -install . Se Serviço instalado com sucesso aparecer, significa que a instalação foi bem-sucedida; se Instalar serviço negado aparecer , significa que o cmd não está sendo executado com direitos de administrador:
Em seguida, continue digitando o comando: mysqld --initialize , não haverá prompts neste momento:
Aguarde até que o cursor de entrada apareça antes de inserir o comando de inicialização: net start mysql . O seguinte prompt aparece para provar que o MySQL foi iniciado com sucesso :
5.Defina a senha do MySQL
(1) Definir a senha aqui é principalmente para resolver o problema de: *ERROR 1045 (28000): Acesso negado ao usuário 'root'@'localhost' (usando senha: NO)* (2) Primeiro pare o serviço MySQL e entre a
linha de comando net stop mysql :
(3) Encontre my.ini no diretório D:\Program Files\Mysql\mysql-5.7.43-winx64, adicione skip-grant-tables a qualquer linha no campo [mysqld] e salve : Se o diretório de instalação for diferente, lembre-se de modificar o caminho de instalação do MySQL.
(4) Reinicie o MySQL e digite o comando de inicialização: net start mysql . O seguinte prompt aparece para provar que o MySQL foi iniciado com sucesso:
Digite o comando mysql -u root -p . Não há necessidade de inserir uma senha. Basta pressionar Enter:
Entrando no MySQL com sucesso!
(5) Digite a linha de comando e use mysql para entrar no banco de dados:
(6) Digite a linha de comando update user set authentication_string=password(“ xxxxxx ”) onde user = “root”;
xxxxxx é a nova senha que você definiu. Se a seguinte mensagem aparecer após pressionar Enter, isso prova que a alteração foi bem-sucedida! Não se esqueça do ponto e vírgula no final.
(7) Pare manualmente o serviço MySQL, digite service na barra de pesquisa do win10 e encontre MySQL. Basta clicar com o botão direito e clicar em Parar.
Em seguida , exclua a linha skip-grant-tables no arquivo my.ini agora mesmo , salve e feche.
(8) Inicie o cmd novamente (como administrador), digite o comando de inicialização: net start mysql , digite mysql -u root -p e digite a senha que você acabou de definir. As informações a seguir aparecem para provar que a configuração foi bem-sucedida.
Em seguida, digite a linha de comando e use mysql para verificar, e o resultado é um erro:
Como a senha não foi redefinida, redefina-a.
Digite a linha de comando alter user user() identificado por “xxxxxx”;
Minha senha é 123456 , então digito alter user user() identificado por “123456”; pressione Enter!
Cada vez mais perto da vitória!
Entre na linha de comando e use mysql novamente para verificar, sucesso!
3. Configuração de variável de ambiente
1. Importe a biblioteca
using MySql.Data.MySqlClient;
using System.Net.NetworkInformation;
2. Método de operação
public MySqlConnection mysqlconn = null;
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
}
/// <summary>
/// 连接Mysql数据库
/// </summary>
/// <param name="DatabaseName">数据库名</param>
/// <param name="IP">IP地址</param>
/// <param name="Username">数据库用户名</param>
/// <param name="Password">数据库密码</param>
/// <param name="Port">数据库端口</param>
/// <returns></returns>
public bool Mysqlconnect(string DatabaseName, string IP, string Username, string Password, string Port)
{
try
{
if (PingIP(IP))
{
mysqlconn = new MySqlConnection("Database=" + DatabaseName + ";Data Source=" + IP + ";User Id=" + Username + ";Password=" + Password + ";pooling=false;CharSet=utf8;port=" + Port + "");
}
else
{
return false;
}
}
catch (Exception ex)
{
return false;
}
return true;
}
/// <summary>
/// 往Mysql数据库中加入、删除、更改数据
/// </summary>
/// <param name="sql"></param>
/// <returns></returns>
public int setMysqlDataSet(string sql)
{
try
{
mysqlconn.Open();
MySqlCommand ad = new MySqlCommand(sql, mysqlconn);
int T;
T = ad.ExecuteNonQuery();
mysqlconn.Close();
return T;
}
catch (Exception ex)
{
mysqlconn.Close();
return 0;
}
}
/// <summary>
/// 读取Mysql数据库(必须先调用Mysqlconnect()传参连接数据库)
/// </summary>
/// <param name="sql"></param>
/// <returns></returns>
public DataSet getMysqlDataSet(string sql)
{
try
{
mysqlconn.Open();
MySqlDataAdapter AD = new MySqlDataAdapter(sql, mysqlconn);
DataSet DS = new DataSet();
AD.Fill(DS);
mysqlconn.Close();
return DS;
}
catch (Exception ex)
{
mysqlconn.Close();
return null;
}
}
/// <summary>
/// ping网络是否OK
/// </summary>
/// <param name="IP">IP地址</param>
/// <returns></returns>
public Boolean PingIP(String IP)
{
try
{
Ping ping = new Ping();
PingReply pingreply;
pingreply = ping.Send(IP, 900);
Boolean result = pingreply.Status == IPStatus.Success;
ping.Dispose();
return result;
}
catch (Exception ex)
{
return false;
}
}
public void Test()
{
//连接数据库
Mysqlconnect("test", "127.0.0.1", "admin", "password", "3306");
//插入数据库
setMysqlDataSet("insert into test (test1,test2) values ('1','2')");
//获取数据库
getMysqlDataSet("select * from test");
//修改数据库
setMysqlDataSet("update test set test2 = '3' where test1='1'");
//删除数据库
setMysqlDataSet("delete from test where test1='1'");
}
Nota: Existe um método PingIP() ao conectar-se ao banco de dados. Se o banco de dados MySQL estiver em um servidor remoto, você pode verificar se pode se conectar ao IP do servidor remoto antes de conectar. Se você não precisa deste método, você pode excluí-lo.
Resumir
Falarei acima sobre isso hoje. Este artigo apresenta em detalhes a instalação do MySQL e as operações do banco de dados. Siga a introdução para instalar e testar.